| 1 | /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |
| 2 | |* *| |
| 3 | |* DAG Instruction Selector for the WebAssembly target *| |
| 4 | |* *| |
| 5 | |* Automatically generated file, do not edit! *| |
| 6 | |* *| |
| 7 | \*===----------------------------------------------------------------------===*/ |
| 8 | |
| 9 | // *** NOTE: This file is #included into the middle of the target |
| 10 | // *** instruction selector class. These functions are really methods. |
| 11 | |
| 12 | // If GET_DAGISEL_DECL is #defined with any value, only function |
| 13 | // declarations will be included when this file is included. |
| 14 | // If GET_DAGISEL_BODY is #defined, its value should be the name of |
| 15 | // the instruction selector class. Function bodies will be emitted |
| 16 | // and each function's name will be qualified with the name of the |
| 17 | // class. |
| 18 | // |
| 19 | // When neither of the GET_DAGISEL* macros is defined, the functions |
| 20 | // are emitted inline. |
| 21 | |
| 22 | #if defined(GET_DAGISEL_DECL) && defined(GET_DAGISEL_BODY) |
| 23 | #error GET_DAGISEL_DECL and GET_DAGISEL_BODY cannot be both defined, undef both for inline definitions |
| 24 | #endif |
| 25 | |
| 26 | #ifdef GET_DAGISEL_BODY |
| 27 | #define LOCAL_DAGISEL_STRINGIZE(X) LOCAL_DAGISEL_STRINGIZE_(X) |
| 28 | #define LOCAL_DAGISEL_STRINGIZE_(X) #X |
| 29 | static_assert(sizeof(LOCAL_DAGISEL_STRINGIZE(GET_DAGISEL_BODY)) > 1, |
| 30 | "GET_DAGISEL_BODY is empty: it should be defined with the class name" ); |
| 31 | #undef LOCAL_DAGISEL_STRINGIZE_ |
| 32 | #undef LOCAL_DAGISEL_STRINGIZE |
| 33 | #endif |
| 34 | |
| 35 | #if !defined(GET_DAGISEL_DECL) && !defined(GET_DAGISEL_BODY) |
| 36 | #define DAGISEL_INLINE 1 |
| 37 | #else |
| 38 | #define DAGISEL_INLINE 0 |
| 39 | #endif |
| 40 | |
| 41 | #if !DAGISEL_INLINE |
| 42 | #define DAGISEL_CLASS_COLONCOLON GET_DAGISEL_BODY :: |
| 43 | #else |
| 44 | #define DAGISEL_CLASS_COLONCOLON |
| 45 | #endif |
| 46 | |
| 47 | #ifdef GET_DAGISEL_DECL |
| 48 | void SelectCode(SDNode *N); |
| 49 | #endif |
| 50 | #if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE |
| 51 | void DAGISEL_CLASS_COLONCOLON SelectCode(SDNode *N) |
| 52 | { |
| 53 | // Some target values are emitted as 2 bytes, TARGET_VAL handles |
| 54 | // this. |
| 55 | #define TARGET_VAL(X) X & 255, unsigned(X) >> 8 |
| 56 | static const unsigned char MatcherTable[] = { |
| 57 | /* 0*/ OPC_SwitchOpcode /*102 cases */, 88|128,102/*13144*/, TARGET_VAL(ISD::AND),// ->13149 |
| 58 | /* 5*/ OPC_Scope, 91, /*->98*/ // 162 children in Scope |
| 59 | /* 7*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 60 | /* 10*/ OPC_MoveChild0, |
| 61 | /* 11*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 62 | /* 14*/ OPC_MoveChild0, |
| 63 | /* 15*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 64 | /* 18*/ OPC_RecordMemRef, |
| 65 | /* 19*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 66 | /* 20*/ OPC_CheckFoldableChainNode, |
| 67 | /* 21*/ OPC_MoveChild1, |
| 68 | /* 22*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 69 | /* 25*/ OPC_RecordChild0, // #1 = $addr |
| 70 | /* 26*/ OPC_RecordChild1, // #2 = $off |
| 71 | /* 27*/ OPC_MoveChild1, |
| 72 | /* 28*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 73 | /* 31*/ OPC_MoveParent, |
| 74 | /* 32*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 75 | /* 34*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->66 |
| 76 | /* 37*/ OPC_MoveParent, |
| 77 | /* 38*/ OPC_MoveChild2, |
| 78 | /* 39*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 79 | /* 42*/ OPC_RecordChild0, // #3 = $val |
| 80 | /* 43*/ OPC_MoveParent, |
| 81 | /* 44*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 82 | /* 46*/ OPC_MoveParent, |
| 83 | /* 47*/ OPC_MoveParent, |
| 84 | /* 48*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 85 | /* 50*/ OPC_EmitMergeInputChains1_0, |
| 86 | /* 51*/ OPC_EmitInteger, MVT::i32, 0, |
| 87 | /* 54*/ OPC_EmitConvertToTarget, 2, |
| 88 | /* 56*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 89 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 90 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 91 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 92 | /* 66*/ /*SwitchType*/ 29, MVT::i64,// ->97 |
| 93 | /* 68*/ OPC_MoveParent, |
| 94 | /* 69*/ OPC_MoveChild2, |
| 95 | /* 70*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 96 | /* 73*/ OPC_RecordChild0, // #3 = $val |
| 97 | /* 74*/ OPC_MoveParent, |
| 98 | /* 75*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 99 | /* 77*/ OPC_MoveParent, |
| 100 | /* 78*/ OPC_MoveParent, |
| 101 | /* 79*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 102 | /* 81*/ OPC_EmitMergeInputChains1_0, |
| 103 | /* 82*/ OPC_EmitInteger, MVT::i32, 0, |
| 104 | /* 85*/ OPC_EmitConvertToTarget, 2, |
| 105 | /* 87*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 106 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 107 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 108 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 109 | /* 97*/ 0, // EndSwitchType |
| 110 | /* 98*/ /*Scope*/ 92, /*->191*/ |
| 111 | /* 99*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 112 | /* 103*/ OPC_MoveChild0, |
| 113 | /* 104*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 114 | /* 107*/ OPC_MoveChild0, |
| 115 | /* 108*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 116 | /* 111*/ OPC_RecordMemRef, |
| 117 | /* 112*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 118 | /* 113*/ OPC_CheckFoldableChainNode, |
| 119 | /* 114*/ OPC_MoveChild1, |
| 120 | /* 115*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 121 | /* 118*/ OPC_RecordChild0, // #1 = $addr |
| 122 | /* 119*/ OPC_RecordChild1, // #2 = $off |
| 123 | /* 120*/ OPC_MoveChild1, |
| 124 | /* 121*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 125 | /* 124*/ OPC_MoveParent, |
| 126 | /* 125*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 127 | /* 127*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->159 |
| 128 | /* 130*/ OPC_MoveParent, |
| 129 | /* 131*/ OPC_MoveChild2, |
| 130 | /* 132*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 131 | /* 135*/ OPC_RecordChild0, // #3 = $val |
| 132 | /* 136*/ OPC_MoveParent, |
| 133 | /* 137*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 134 | /* 139*/ OPC_MoveParent, |
| 135 | /* 140*/ OPC_MoveParent, |
| 136 | /* 141*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 137 | /* 143*/ OPC_EmitMergeInputChains1_0, |
| 138 | /* 144*/ OPC_EmitInteger, MVT::i32, 0, |
| 139 | /* 147*/ OPC_EmitConvertToTarget, 2, |
| 140 | /* 149*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 141 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 142 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 143 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 144 | /* 159*/ /*SwitchType*/ 29, MVT::i64,// ->190 |
| 145 | /* 161*/ OPC_MoveParent, |
| 146 | /* 162*/ OPC_MoveChild2, |
| 147 | /* 163*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 148 | /* 166*/ OPC_RecordChild0, // #3 = $val |
| 149 | /* 167*/ OPC_MoveParent, |
| 150 | /* 168*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 151 | /* 170*/ OPC_MoveParent, |
| 152 | /* 171*/ OPC_MoveParent, |
| 153 | /* 172*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 154 | /* 174*/ OPC_EmitMergeInputChains1_0, |
| 155 | /* 175*/ OPC_EmitInteger, MVT::i32, 0, |
| 156 | /* 178*/ OPC_EmitConvertToTarget, 2, |
| 157 | /* 180*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 158 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 159 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 160 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 161 | /* 190*/ 0, // EndSwitchType |
| 162 | /* 191*/ /*Scope*/ 91, /*->283*/ |
| 163 | /* 192*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 164 | /* 195*/ OPC_MoveChild0, |
| 165 | /* 196*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 166 | /* 199*/ OPC_MoveChild0, |
| 167 | /* 200*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 168 | /* 203*/ OPC_RecordMemRef, |
| 169 | /* 204*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 170 | /* 205*/ OPC_CheckFoldableChainNode, |
| 171 | /* 206*/ OPC_MoveChild1, |
| 172 | /* 207*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 173 | /* 210*/ OPC_RecordChild0, // #1 = $addr |
| 174 | /* 211*/ OPC_RecordChild1, // #2 = $off |
| 175 | /* 212*/ OPC_MoveChild1, |
| 176 | /* 213*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 177 | /* 216*/ OPC_MoveParent, |
| 178 | /* 217*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 179 | /* 219*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->251 |
| 180 | /* 222*/ OPC_MoveParent, |
| 181 | /* 223*/ OPC_MoveChild2, |
| 182 | /* 224*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 183 | /* 227*/ OPC_RecordChild0, // #3 = $val |
| 184 | /* 228*/ OPC_MoveParent, |
| 185 | /* 229*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 186 | /* 231*/ OPC_MoveParent, |
| 187 | /* 232*/ OPC_MoveParent, |
| 188 | /* 233*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 189 | /* 235*/ OPC_EmitMergeInputChains1_0, |
| 190 | /* 236*/ OPC_EmitInteger, MVT::i32, 0, |
| 191 | /* 239*/ OPC_EmitConvertToTarget, 2, |
| 192 | /* 241*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 193 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 194 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 195 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 196 | /* 251*/ /*SwitchType*/ 29, MVT::i64,// ->282 |
| 197 | /* 253*/ OPC_MoveParent, |
| 198 | /* 254*/ OPC_MoveChild2, |
| 199 | /* 255*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 200 | /* 258*/ OPC_RecordChild0, // #3 = $val |
| 201 | /* 259*/ OPC_MoveParent, |
| 202 | /* 260*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 203 | /* 262*/ OPC_MoveParent, |
| 204 | /* 263*/ OPC_MoveParent, |
| 205 | /* 264*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 206 | /* 266*/ OPC_EmitMergeInputChains1_0, |
| 207 | /* 267*/ OPC_EmitInteger, MVT::i32, 0, |
| 208 | /* 270*/ OPC_EmitConvertToTarget, 2, |
| 209 | /* 272*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 210 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 211 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 212 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 213 | /* 282*/ 0, // EndSwitchType |
| 214 | /* 283*/ /*Scope*/ 92, /*->376*/ |
| 215 | /* 284*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 216 | /* 288*/ OPC_MoveChild0, |
| 217 | /* 289*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 218 | /* 292*/ OPC_MoveChild0, |
| 219 | /* 293*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 220 | /* 296*/ OPC_RecordMemRef, |
| 221 | /* 297*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 222 | /* 298*/ OPC_CheckFoldableChainNode, |
| 223 | /* 299*/ OPC_MoveChild1, |
| 224 | /* 300*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 225 | /* 303*/ OPC_RecordChild0, // #1 = $addr |
| 226 | /* 304*/ OPC_RecordChild1, // #2 = $off |
| 227 | /* 305*/ OPC_MoveChild1, |
| 228 | /* 306*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 229 | /* 309*/ OPC_MoveParent, |
| 230 | /* 310*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 231 | /* 312*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->344 |
| 232 | /* 315*/ OPC_MoveParent, |
| 233 | /* 316*/ OPC_MoveChild2, |
| 234 | /* 317*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 235 | /* 320*/ OPC_RecordChild0, // #3 = $val |
| 236 | /* 321*/ OPC_MoveParent, |
| 237 | /* 322*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 238 | /* 324*/ OPC_MoveParent, |
| 239 | /* 325*/ OPC_MoveParent, |
| 240 | /* 326*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 241 | /* 328*/ OPC_EmitMergeInputChains1_0, |
| 242 | /* 329*/ OPC_EmitInteger, MVT::i32, 0, |
| 243 | /* 332*/ OPC_EmitConvertToTarget, 2, |
| 244 | /* 334*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 245 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 246 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 247 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 248 | /* 344*/ /*SwitchType*/ 29, MVT::i64,// ->375 |
| 249 | /* 346*/ OPC_MoveParent, |
| 250 | /* 347*/ OPC_MoveChild2, |
| 251 | /* 348*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 252 | /* 351*/ OPC_RecordChild0, // #3 = $val |
| 253 | /* 352*/ OPC_MoveParent, |
| 254 | /* 353*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 255 | /* 355*/ OPC_MoveParent, |
| 256 | /* 356*/ OPC_MoveParent, |
| 257 | /* 357*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 258 | /* 359*/ OPC_EmitMergeInputChains1_0, |
| 259 | /* 360*/ OPC_EmitInteger, MVT::i32, 0, |
| 260 | /* 363*/ OPC_EmitConvertToTarget, 2, |
| 261 | /* 365*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 262 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 263 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 264 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 265 | /* 375*/ 0, // EndSwitchType |
| 266 | /* 376*/ /*Scope*/ 91, /*->468*/ |
| 267 | /* 377*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 268 | /* 380*/ OPC_MoveChild0, |
| 269 | /* 381*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 270 | /* 384*/ OPC_MoveChild0, |
| 271 | /* 385*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 272 | /* 388*/ OPC_RecordMemRef, |
| 273 | /* 389*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 274 | /* 390*/ OPC_CheckFoldableChainNode, |
| 275 | /* 391*/ OPC_MoveChild1, |
| 276 | /* 392*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 277 | /* 395*/ OPC_RecordChild0, // #1 = $addr |
| 278 | /* 396*/ OPC_RecordChild1, // #2 = $off |
| 279 | /* 397*/ OPC_MoveChild1, |
| 280 | /* 398*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 281 | /* 401*/ OPC_MoveParent, |
| 282 | /* 402*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 283 | /* 404*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->436 |
| 284 | /* 407*/ OPC_MoveParent, |
| 285 | /* 408*/ OPC_MoveChild2, |
| 286 | /* 409*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 287 | /* 412*/ OPC_RecordChild0, // #3 = $val |
| 288 | /* 413*/ OPC_MoveParent, |
| 289 | /* 414*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 290 | /* 416*/ OPC_MoveParent, |
| 291 | /* 417*/ OPC_MoveParent, |
| 292 | /* 418*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 293 | /* 420*/ OPC_EmitMergeInputChains1_0, |
| 294 | /* 421*/ OPC_EmitInteger, MVT::i32, 0, |
| 295 | /* 424*/ OPC_EmitConvertToTarget, 2, |
| 296 | /* 426*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 297 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 298 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 299 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 300 | /* 436*/ /*SwitchType*/ 29, MVT::i64,// ->467 |
| 301 | /* 438*/ OPC_MoveParent, |
| 302 | /* 439*/ OPC_MoveChild2, |
| 303 | /* 440*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 304 | /* 443*/ OPC_RecordChild0, // #3 = $val |
| 305 | /* 444*/ OPC_MoveParent, |
| 306 | /* 445*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 307 | /* 447*/ OPC_MoveParent, |
| 308 | /* 448*/ OPC_MoveParent, |
| 309 | /* 449*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 310 | /* 451*/ OPC_EmitMergeInputChains1_0, |
| 311 | /* 452*/ OPC_EmitInteger, MVT::i32, 0, |
| 312 | /* 455*/ OPC_EmitConvertToTarget, 2, |
| 313 | /* 457*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 314 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 315 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 316 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 317 | /* 467*/ 0, // EndSwitchType |
| 318 | /* 468*/ /*Scope*/ 92, /*->561*/ |
| 319 | /* 469*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 320 | /* 473*/ OPC_MoveChild0, |
| 321 | /* 474*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 322 | /* 477*/ OPC_MoveChild0, |
| 323 | /* 478*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 324 | /* 481*/ OPC_RecordMemRef, |
| 325 | /* 482*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 326 | /* 483*/ OPC_CheckFoldableChainNode, |
| 327 | /* 484*/ OPC_MoveChild1, |
| 328 | /* 485*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 329 | /* 488*/ OPC_RecordChild0, // #1 = $addr |
| 330 | /* 489*/ OPC_RecordChild1, // #2 = $off |
| 331 | /* 490*/ OPC_MoveChild1, |
| 332 | /* 491*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 333 | /* 494*/ OPC_MoveParent, |
| 334 | /* 495*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 335 | /* 497*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->529 |
| 336 | /* 500*/ OPC_MoveParent, |
| 337 | /* 501*/ OPC_MoveChild2, |
| 338 | /* 502*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 339 | /* 505*/ OPC_RecordChild0, // #3 = $val |
| 340 | /* 506*/ OPC_MoveParent, |
| 341 | /* 507*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 342 | /* 509*/ OPC_MoveParent, |
| 343 | /* 510*/ OPC_MoveParent, |
| 344 | /* 511*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 345 | /* 513*/ OPC_EmitMergeInputChains1_0, |
| 346 | /* 514*/ OPC_EmitInteger, MVT::i32, 0, |
| 347 | /* 517*/ OPC_EmitConvertToTarget, 2, |
| 348 | /* 519*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 349 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 350 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 351 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 352 | /* 529*/ /*SwitchType*/ 29, MVT::i64,// ->560 |
| 353 | /* 531*/ OPC_MoveParent, |
| 354 | /* 532*/ OPC_MoveChild2, |
| 355 | /* 533*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 356 | /* 536*/ OPC_RecordChild0, // #3 = $val |
| 357 | /* 537*/ OPC_MoveParent, |
| 358 | /* 538*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 359 | /* 540*/ OPC_MoveParent, |
| 360 | /* 541*/ OPC_MoveParent, |
| 361 | /* 542*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 362 | /* 544*/ OPC_EmitMergeInputChains1_0, |
| 363 | /* 545*/ OPC_EmitInteger, MVT::i32, 0, |
| 364 | /* 548*/ OPC_EmitConvertToTarget, 2, |
| 365 | /* 550*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 366 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 367 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 368 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 369 | /* 560*/ 0, // EndSwitchType |
| 370 | /* 561*/ /*Scope*/ 91, /*->653*/ |
| 371 | /* 562*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 372 | /* 565*/ OPC_MoveChild0, |
| 373 | /* 566*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 374 | /* 569*/ OPC_MoveChild0, |
| 375 | /* 570*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 376 | /* 573*/ OPC_RecordMemRef, |
| 377 | /* 574*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 378 | /* 575*/ OPC_CheckFoldableChainNode, |
| 379 | /* 576*/ OPC_MoveChild1, |
| 380 | /* 577*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 381 | /* 580*/ OPC_RecordChild0, // #1 = $addr |
| 382 | /* 581*/ OPC_RecordChild1, // #2 = $off |
| 383 | /* 582*/ OPC_MoveChild1, |
| 384 | /* 583*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 385 | /* 586*/ OPC_MoveParent, |
| 386 | /* 587*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 387 | /* 589*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->621 |
| 388 | /* 592*/ OPC_MoveParent, |
| 389 | /* 593*/ OPC_MoveChild2, |
| 390 | /* 594*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 391 | /* 597*/ OPC_RecordChild0, // #3 = $val |
| 392 | /* 598*/ OPC_MoveParent, |
| 393 | /* 599*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 394 | /* 601*/ OPC_MoveParent, |
| 395 | /* 602*/ OPC_MoveParent, |
| 396 | /* 603*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 397 | /* 605*/ OPC_EmitMergeInputChains1_0, |
| 398 | /* 606*/ OPC_EmitInteger, MVT::i32, 0, |
| 399 | /* 609*/ OPC_EmitConvertToTarget, 2, |
| 400 | /* 611*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 401 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 402 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 403 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 404 | /* 621*/ /*SwitchType*/ 29, MVT::i64,// ->652 |
| 405 | /* 623*/ OPC_MoveParent, |
| 406 | /* 624*/ OPC_MoveChild2, |
| 407 | /* 625*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 408 | /* 628*/ OPC_RecordChild0, // #3 = $val |
| 409 | /* 629*/ OPC_MoveParent, |
| 410 | /* 630*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 411 | /* 632*/ OPC_MoveParent, |
| 412 | /* 633*/ OPC_MoveParent, |
| 413 | /* 634*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 414 | /* 636*/ OPC_EmitMergeInputChains1_0, |
| 415 | /* 637*/ OPC_EmitInteger, MVT::i32, 0, |
| 416 | /* 640*/ OPC_EmitConvertToTarget, 2, |
| 417 | /* 642*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 418 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 419 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 420 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 421 | /* 652*/ 0, // EndSwitchType |
| 422 | /* 653*/ /*Scope*/ 92, /*->746*/ |
| 423 | /* 654*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 424 | /* 658*/ OPC_MoveChild0, |
| 425 | /* 659*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 426 | /* 662*/ OPC_MoveChild0, |
| 427 | /* 663*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 428 | /* 666*/ OPC_RecordMemRef, |
| 429 | /* 667*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 430 | /* 668*/ OPC_CheckFoldableChainNode, |
| 431 | /* 669*/ OPC_MoveChild1, |
| 432 | /* 670*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 433 | /* 673*/ OPC_RecordChild0, // #1 = $addr |
| 434 | /* 674*/ OPC_RecordChild1, // #2 = $off |
| 435 | /* 675*/ OPC_MoveChild1, |
| 436 | /* 676*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 437 | /* 679*/ OPC_MoveParent, |
| 438 | /* 680*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 439 | /* 682*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->714 |
| 440 | /* 685*/ OPC_MoveParent, |
| 441 | /* 686*/ OPC_MoveChild2, |
| 442 | /* 687*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 443 | /* 690*/ OPC_RecordChild0, // #3 = $val |
| 444 | /* 691*/ OPC_MoveParent, |
| 445 | /* 692*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 446 | /* 694*/ OPC_MoveParent, |
| 447 | /* 695*/ OPC_MoveParent, |
| 448 | /* 696*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 449 | /* 698*/ OPC_EmitMergeInputChains1_0, |
| 450 | /* 699*/ OPC_EmitInteger, MVT::i32, 0, |
| 451 | /* 702*/ OPC_EmitConvertToTarget, 2, |
| 452 | /* 704*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 453 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 454 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 455 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 456 | /* 714*/ /*SwitchType*/ 29, MVT::i64,// ->745 |
| 457 | /* 716*/ OPC_MoveParent, |
| 458 | /* 717*/ OPC_MoveChild2, |
| 459 | /* 718*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 460 | /* 721*/ OPC_RecordChild0, // #3 = $val |
| 461 | /* 722*/ OPC_MoveParent, |
| 462 | /* 723*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 463 | /* 725*/ OPC_MoveParent, |
| 464 | /* 726*/ OPC_MoveParent, |
| 465 | /* 727*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 466 | /* 729*/ OPC_EmitMergeInputChains1_0, |
| 467 | /* 730*/ OPC_EmitInteger, MVT::i32, 0, |
| 468 | /* 733*/ OPC_EmitConvertToTarget, 2, |
| 469 | /* 735*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 470 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 471 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 472 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 473 | /* 745*/ 0, // EndSwitchType |
| 474 | /* 746*/ /*Scope*/ 91, /*->838*/ |
| 475 | /* 747*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 476 | /* 750*/ OPC_MoveChild0, |
| 477 | /* 751*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 478 | /* 754*/ OPC_MoveChild0, |
| 479 | /* 755*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 480 | /* 758*/ OPC_RecordMemRef, |
| 481 | /* 759*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 482 | /* 760*/ OPC_CheckFoldableChainNode, |
| 483 | /* 761*/ OPC_MoveChild1, |
| 484 | /* 762*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 485 | /* 765*/ OPC_RecordChild0, // #1 = $addr |
| 486 | /* 766*/ OPC_RecordChild1, // #2 = $off |
| 487 | /* 767*/ OPC_MoveChild1, |
| 488 | /* 768*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 489 | /* 771*/ OPC_MoveParent, |
| 490 | /* 772*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 491 | /* 774*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->806 |
| 492 | /* 777*/ OPC_MoveParent, |
| 493 | /* 778*/ OPC_MoveChild2, |
| 494 | /* 779*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 495 | /* 782*/ OPC_RecordChild0, // #3 = $val |
| 496 | /* 783*/ OPC_MoveParent, |
| 497 | /* 784*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 498 | /* 786*/ OPC_MoveParent, |
| 499 | /* 787*/ OPC_MoveParent, |
| 500 | /* 788*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 501 | /* 790*/ OPC_EmitMergeInputChains1_0, |
| 502 | /* 791*/ OPC_EmitInteger, MVT::i32, 0, |
| 503 | /* 794*/ OPC_EmitConvertToTarget, 2, |
| 504 | /* 796*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 505 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 506 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 507 | // Dst: (ATOMIC_RMW8_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 508 | /* 806*/ /*SwitchType*/ 29, MVT::i64,// ->837 |
| 509 | /* 808*/ OPC_MoveParent, |
| 510 | /* 809*/ OPC_MoveChild2, |
| 511 | /* 810*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 512 | /* 813*/ OPC_RecordChild0, // #3 = $val |
| 513 | /* 814*/ OPC_MoveParent, |
| 514 | /* 815*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 515 | /* 817*/ OPC_MoveParent, |
| 516 | /* 818*/ OPC_MoveParent, |
| 517 | /* 819*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 518 | /* 821*/ OPC_EmitMergeInputChains1_0, |
| 519 | /* 822*/ OPC_EmitInteger, MVT::i32, 0, |
| 520 | /* 825*/ OPC_EmitConvertToTarget, 2, |
| 521 | /* 827*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 522 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 523 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 524 | // Dst: (ATOMIC_RMW8_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 525 | /* 837*/ 0, // EndSwitchType |
| 526 | /* 838*/ /*Scope*/ 92, /*->931*/ |
| 527 | /* 839*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 528 | /* 843*/ OPC_MoveChild0, |
| 529 | /* 844*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 530 | /* 847*/ OPC_MoveChild0, |
| 531 | /* 848*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 532 | /* 851*/ OPC_RecordMemRef, |
| 533 | /* 852*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 534 | /* 853*/ OPC_CheckFoldableChainNode, |
| 535 | /* 854*/ OPC_MoveChild1, |
| 536 | /* 855*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 537 | /* 858*/ OPC_RecordChild0, // #1 = $addr |
| 538 | /* 859*/ OPC_RecordChild1, // #2 = $off |
| 539 | /* 860*/ OPC_MoveChild1, |
| 540 | /* 861*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 541 | /* 864*/ OPC_MoveParent, |
| 542 | /* 865*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 543 | /* 867*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->899 |
| 544 | /* 870*/ OPC_MoveParent, |
| 545 | /* 871*/ OPC_MoveChild2, |
| 546 | /* 872*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 547 | /* 875*/ OPC_RecordChild0, // #3 = $val |
| 548 | /* 876*/ OPC_MoveParent, |
| 549 | /* 877*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 550 | /* 879*/ OPC_MoveParent, |
| 551 | /* 880*/ OPC_MoveParent, |
| 552 | /* 881*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 553 | /* 883*/ OPC_EmitMergeInputChains1_0, |
| 554 | /* 884*/ OPC_EmitInteger, MVT::i32, 0, |
| 555 | /* 887*/ OPC_EmitConvertToTarget, 2, |
| 556 | /* 889*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 557 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 558 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 559 | // Dst: (ATOMIC_RMW16_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 560 | /* 899*/ /*SwitchType*/ 29, MVT::i64,// ->930 |
| 561 | /* 901*/ OPC_MoveParent, |
| 562 | /* 902*/ OPC_MoveChild2, |
| 563 | /* 903*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 564 | /* 906*/ OPC_RecordChild0, // #3 = $val |
| 565 | /* 907*/ OPC_MoveParent, |
| 566 | /* 908*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 567 | /* 910*/ OPC_MoveParent, |
| 568 | /* 911*/ OPC_MoveParent, |
| 569 | /* 912*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 570 | /* 914*/ OPC_EmitMergeInputChains1_0, |
| 571 | /* 915*/ OPC_EmitInteger, MVT::i32, 0, |
| 572 | /* 918*/ OPC_EmitConvertToTarget, 2, |
| 573 | /* 920*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 574 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 575 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 576 | // Dst: (ATOMIC_RMW16_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 577 | /* 930*/ 0, // EndSwitchType |
| 578 | /* 931*/ /*Scope*/ 91, /*->1023*/ |
| 579 | /* 932*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 580 | /* 935*/ OPC_MoveChild0, |
| 581 | /* 936*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 582 | /* 939*/ OPC_MoveChild0, |
| 583 | /* 940*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 584 | /* 943*/ OPC_RecordMemRef, |
| 585 | /* 944*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 586 | /* 945*/ OPC_CheckFoldableChainNode, |
| 587 | /* 946*/ OPC_MoveChild1, |
| 588 | /* 947*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 589 | /* 950*/ OPC_RecordChild0, // #1 = $addr |
| 590 | /* 951*/ OPC_RecordChild1, // #2 = $off |
| 591 | /* 952*/ OPC_MoveChild1, |
| 592 | /* 953*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 593 | /* 956*/ OPC_MoveParent, |
| 594 | /* 957*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 595 | /* 959*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->991 |
| 596 | /* 962*/ OPC_MoveParent, |
| 597 | /* 963*/ OPC_MoveChild2, |
| 598 | /* 964*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 599 | /* 967*/ OPC_RecordChild0, // #3 = $val |
| 600 | /* 968*/ OPC_MoveParent, |
| 601 | /* 969*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 602 | /* 971*/ OPC_MoveParent, |
| 603 | /* 972*/ OPC_MoveParent, |
| 604 | /* 973*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 605 | /* 975*/ OPC_EmitMergeInputChains1_0, |
| 606 | /* 976*/ OPC_EmitInteger, MVT::i32, 0, |
| 607 | /* 979*/ OPC_EmitConvertToTarget, 2, |
| 608 | /* 981*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 609 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 610 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 611 | // Dst: (ATOMIC_RMW8_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 612 | /* 991*/ /*SwitchType*/ 29, MVT::i64,// ->1022 |
| 613 | /* 993*/ OPC_MoveParent, |
| 614 | /* 994*/ OPC_MoveChild2, |
| 615 | /* 995*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 616 | /* 998*/ OPC_RecordChild0, // #3 = $val |
| 617 | /* 999*/ OPC_MoveParent, |
| 618 | /* 1000*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 619 | /* 1002*/ OPC_MoveParent, |
| 620 | /* 1003*/ OPC_MoveParent, |
| 621 | /* 1004*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 622 | /* 1006*/ OPC_EmitMergeInputChains1_0, |
| 623 | /* 1007*/ OPC_EmitInteger, MVT::i32, 0, |
| 624 | /* 1010*/ OPC_EmitConvertToTarget, 2, |
| 625 | /* 1012*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 626 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 627 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 628 | // Dst: (ATOMIC_RMW8_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 629 | /* 1022*/ 0, // EndSwitchType |
| 630 | /* 1023*/ /*Scope*/ 92, /*->1116*/ |
| 631 | /* 1024*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 632 | /* 1028*/ OPC_MoveChild0, |
| 633 | /* 1029*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 634 | /* 1032*/ OPC_MoveChild0, |
| 635 | /* 1033*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 636 | /* 1036*/ OPC_RecordMemRef, |
| 637 | /* 1037*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 638 | /* 1038*/ OPC_CheckFoldableChainNode, |
| 639 | /* 1039*/ OPC_MoveChild1, |
| 640 | /* 1040*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 641 | /* 1043*/ OPC_RecordChild0, // #1 = $addr |
| 642 | /* 1044*/ OPC_RecordChild1, // #2 = $off |
| 643 | /* 1045*/ OPC_MoveChild1, |
| 644 | /* 1046*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 645 | /* 1049*/ OPC_MoveParent, |
| 646 | /* 1050*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 647 | /* 1052*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->1084 |
| 648 | /* 1055*/ OPC_MoveParent, |
| 649 | /* 1056*/ OPC_MoveChild2, |
| 650 | /* 1057*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 651 | /* 1060*/ OPC_RecordChild0, // #3 = $val |
| 652 | /* 1061*/ OPC_MoveParent, |
| 653 | /* 1062*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 654 | /* 1064*/ OPC_MoveParent, |
| 655 | /* 1065*/ OPC_MoveParent, |
| 656 | /* 1066*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 657 | /* 1068*/ OPC_EmitMergeInputChains1_0, |
| 658 | /* 1069*/ OPC_EmitInteger, MVT::i32, 0, |
| 659 | /* 1072*/ OPC_EmitConvertToTarget, 2, |
| 660 | /* 1074*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 661 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 662 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 663 | // Dst: (ATOMIC_RMW16_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 664 | /* 1084*/ /*SwitchType*/ 29, MVT::i64,// ->1115 |
| 665 | /* 1086*/ OPC_MoveParent, |
| 666 | /* 1087*/ OPC_MoveChild2, |
| 667 | /* 1088*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 668 | /* 1091*/ OPC_RecordChild0, // #3 = $val |
| 669 | /* 1092*/ OPC_MoveParent, |
| 670 | /* 1093*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 671 | /* 1095*/ OPC_MoveParent, |
| 672 | /* 1096*/ OPC_MoveParent, |
| 673 | /* 1097*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 674 | /* 1099*/ OPC_EmitMergeInputChains1_0, |
| 675 | /* 1100*/ OPC_EmitInteger, MVT::i32, 0, |
| 676 | /* 1103*/ OPC_EmitConvertToTarget, 2, |
| 677 | /* 1105*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 678 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 679 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 680 | // Dst: (ATOMIC_RMW16_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 681 | /* 1115*/ 0, // EndSwitchType |
| 682 | /* 1116*/ /*Scope*/ 91, /*->1208*/ |
| 683 | /* 1117*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 684 | /* 1120*/ OPC_MoveChild0, |
| 685 | /* 1121*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 686 | /* 1124*/ OPC_MoveChild0, |
| 687 | /* 1125*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 688 | /* 1128*/ OPC_RecordMemRef, |
| 689 | /* 1129*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 690 | /* 1130*/ OPC_CheckFoldableChainNode, |
| 691 | /* 1131*/ OPC_MoveChild1, |
| 692 | /* 1132*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 693 | /* 1135*/ OPC_RecordChild0, // #1 = $addr |
| 694 | /* 1136*/ OPC_RecordChild1, // #2 = $off |
| 695 | /* 1137*/ OPC_MoveChild1, |
| 696 | /* 1138*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 697 | /* 1141*/ OPC_MoveParent, |
| 698 | /* 1142*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 699 | /* 1144*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->1176 |
| 700 | /* 1147*/ OPC_MoveParent, |
| 701 | /* 1148*/ OPC_MoveChild2, |
| 702 | /* 1149*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 703 | /* 1152*/ OPC_RecordChild0, // #3 = $val |
| 704 | /* 1153*/ OPC_MoveParent, |
| 705 | /* 1154*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 706 | /* 1156*/ OPC_MoveParent, |
| 707 | /* 1157*/ OPC_MoveParent, |
| 708 | /* 1158*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 709 | /* 1160*/ OPC_EmitMergeInputChains1_0, |
| 710 | /* 1161*/ OPC_EmitInteger, MVT::i32, 0, |
| 711 | /* 1164*/ OPC_EmitConvertToTarget, 2, |
| 712 | /* 1166*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 713 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 714 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 715 | // Dst: (ATOMIC_RMW8_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 716 | /* 1176*/ /*SwitchType*/ 29, MVT::i64,// ->1207 |
| 717 | /* 1178*/ OPC_MoveParent, |
| 718 | /* 1179*/ OPC_MoveChild2, |
| 719 | /* 1180*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 720 | /* 1183*/ OPC_RecordChild0, // #3 = $val |
| 721 | /* 1184*/ OPC_MoveParent, |
| 722 | /* 1185*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 723 | /* 1187*/ OPC_MoveParent, |
| 724 | /* 1188*/ OPC_MoveParent, |
| 725 | /* 1189*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 726 | /* 1191*/ OPC_EmitMergeInputChains1_0, |
| 727 | /* 1192*/ OPC_EmitInteger, MVT::i32, 0, |
| 728 | /* 1195*/ OPC_EmitConvertToTarget, 2, |
| 729 | /* 1197*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 730 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 731 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 732 | // Dst: (ATOMIC_RMW8_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 733 | /* 1207*/ 0, // EndSwitchType |
| 734 | /* 1208*/ /*Scope*/ 92, /*->1301*/ |
| 735 | /* 1209*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 736 | /* 1213*/ OPC_MoveChild0, |
| 737 | /* 1214*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 738 | /* 1217*/ OPC_MoveChild0, |
| 739 | /* 1218*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 740 | /* 1221*/ OPC_RecordMemRef, |
| 741 | /* 1222*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 742 | /* 1223*/ OPC_CheckFoldableChainNode, |
| 743 | /* 1224*/ OPC_MoveChild1, |
| 744 | /* 1225*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 745 | /* 1228*/ OPC_RecordChild0, // #1 = $addr |
| 746 | /* 1229*/ OPC_RecordChild1, // #2 = $off |
| 747 | /* 1230*/ OPC_MoveChild1, |
| 748 | /* 1231*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 749 | /* 1234*/ OPC_MoveParent, |
| 750 | /* 1235*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 751 | /* 1237*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->1269 |
| 752 | /* 1240*/ OPC_MoveParent, |
| 753 | /* 1241*/ OPC_MoveChild2, |
| 754 | /* 1242*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 755 | /* 1245*/ OPC_RecordChild0, // #3 = $val |
| 756 | /* 1246*/ OPC_MoveParent, |
| 757 | /* 1247*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 758 | /* 1249*/ OPC_MoveParent, |
| 759 | /* 1250*/ OPC_MoveParent, |
| 760 | /* 1251*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 761 | /* 1253*/ OPC_EmitMergeInputChains1_0, |
| 762 | /* 1254*/ OPC_EmitInteger, MVT::i32, 0, |
| 763 | /* 1257*/ OPC_EmitConvertToTarget, 2, |
| 764 | /* 1259*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 765 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 766 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 767 | // Dst: (ATOMIC_RMW16_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 768 | /* 1269*/ /*SwitchType*/ 29, MVT::i64,// ->1300 |
| 769 | /* 1271*/ OPC_MoveParent, |
| 770 | /* 1272*/ OPC_MoveChild2, |
| 771 | /* 1273*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 772 | /* 1276*/ OPC_RecordChild0, // #3 = $val |
| 773 | /* 1277*/ OPC_MoveParent, |
| 774 | /* 1278*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 775 | /* 1280*/ OPC_MoveParent, |
| 776 | /* 1281*/ OPC_MoveParent, |
| 777 | /* 1282*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 778 | /* 1284*/ OPC_EmitMergeInputChains1_0, |
| 779 | /* 1285*/ OPC_EmitInteger, MVT::i32, 0, |
| 780 | /* 1288*/ OPC_EmitConvertToTarget, 2, |
| 781 | /* 1290*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 782 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 783 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 784 | // Dst: (ATOMIC_RMW16_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 785 | /* 1300*/ 0, // EndSwitchType |
| 786 | /* 1301*/ /*Scope*/ 91, /*->1393*/ |
| 787 | /* 1302*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 788 | /* 1305*/ OPC_MoveChild0, |
| 789 | /* 1306*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 790 | /* 1309*/ OPC_MoveChild0, |
| 791 | /* 1310*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 792 | /* 1313*/ OPC_RecordMemRef, |
| 793 | /* 1314*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 794 | /* 1315*/ OPC_CheckFoldableChainNode, |
| 795 | /* 1316*/ OPC_MoveChild1, |
| 796 | /* 1317*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 797 | /* 1320*/ OPC_RecordChild0, // #1 = $addr |
| 798 | /* 1321*/ OPC_RecordChild1, // #2 = $off |
| 799 | /* 1322*/ OPC_MoveChild1, |
| 800 | /* 1323*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 801 | /* 1326*/ OPC_MoveParent, |
| 802 | /* 1327*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 803 | /* 1329*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->1361 |
| 804 | /* 1332*/ OPC_MoveParent, |
| 805 | /* 1333*/ OPC_MoveChild2, |
| 806 | /* 1334*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 807 | /* 1337*/ OPC_RecordChild0, // #3 = $val |
| 808 | /* 1338*/ OPC_MoveParent, |
| 809 | /* 1339*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 810 | /* 1341*/ OPC_MoveParent, |
| 811 | /* 1342*/ OPC_MoveParent, |
| 812 | /* 1343*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 813 | /* 1345*/ OPC_EmitMergeInputChains1_0, |
| 814 | /* 1346*/ OPC_EmitInteger, MVT::i32, 0, |
| 815 | /* 1349*/ OPC_EmitConvertToTarget, 2, |
| 816 | /* 1351*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 817 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 818 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 819 | // Dst: (ATOMIC_RMW8_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 820 | /* 1361*/ /*SwitchType*/ 29, MVT::i64,// ->1392 |
| 821 | /* 1363*/ OPC_MoveParent, |
| 822 | /* 1364*/ OPC_MoveChild2, |
| 823 | /* 1365*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 824 | /* 1368*/ OPC_RecordChild0, // #3 = $val |
| 825 | /* 1369*/ OPC_MoveParent, |
| 826 | /* 1370*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 827 | /* 1372*/ OPC_MoveParent, |
| 828 | /* 1373*/ OPC_MoveParent, |
| 829 | /* 1374*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 830 | /* 1376*/ OPC_EmitMergeInputChains1_0, |
| 831 | /* 1377*/ OPC_EmitInteger, MVT::i32, 0, |
| 832 | /* 1380*/ OPC_EmitConvertToTarget, 2, |
| 833 | /* 1382*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 834 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 835 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 836 | // Dst: (ATOMIC_RMW8_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 837 | /* 1392*/ 0, // EndSwitchType |
| 838 | /* 1393*/ /*Scope*/ 92, /*->1486*/ |
| 839 | /* 1394*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 840 | /* 1398*/ OPC_MoveChild0, |
| 841 | /* 1399*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 842 | /* 1402*/ OPC_MoveChild0, |
| 843 | /* 1403*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 844 | /* 1406*/ OPC_RecordMemRef, |
| 845 | /* 1407*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 846 | /* 1408*/ OPC_CheckFoldableChainNode, |
| 847 | /* 1409*/ OPC_MoveChild1, |
| 848 | /* 1410*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 849 | /* 1413*/ OPC_RecordChild0, // #1 = $addr |
| 850 | /* 1414*/ OPC_RecordChild1, // #2 = $off |
| 851 | /* 1415*/ OPC_MoveChild1, |
| 852 | /* 1416*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 853 | /* 1419*/ OPC_MoveParent, |
| 854 | /* 1420*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 855 | /* 1422*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->1454 |
| 856 | /* 1425*/ OPC_MoveParent, |
| 857 | /* 1426*/ OPC_MoveChild2, |
| 858 | /* 1427*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 859 | /* 1430*/ OPC_RecordChild0, // #3 = $val |
| 860 | /* 1431*/ OPC_MoveParent, |
| 861 | /* 1432*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 862 | /* 1434*/ OPC_MoveParent, |
| 863 | /* 1435*/ OPC_MoveParent, |
| 864 | /* 1436*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 865 | /* 1438*/ OPC_EmitMergeInputChains1_0, |
| 866 | /* 1439*/ OPC_EmitInteger, MVT::i32, 0, |
| 867 | /* 1442*/ OPC_EmitConvertToTarget, 2, |
| 868 | /* 1444*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 869 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 870 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 871 | // Dst: (ATOMIC_RMW16_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 872 | /* 1454*/ /*SwitchType*/ 29, MVT::i64,// ->1485 |
| 873 | /* 1456*/ OPC_MoveParent, |
| 874 | /* 1457*/ OPC_MoveChild2, |
| 875 | /* 1458*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 876 | /* 1461*/ OPC_RecordChild0, // #3 = $val |
| 877 | /* 1462*/ OPC_MoveParent, |
| 878 | /* 1463*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 879 | /* 1465*/ OPC_MoveParent, |
| 880 | /* 1466*/ OPC_MoveParent, |
| 881 | /* 1467*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 882 | /* 1469*/ OPC_EmitMergeInputChains1_0, |
| 883 | /* 1470*/ OPC_EmitInteger, MVT::i32, 0, |
| 884 | /* 1473*/ OPC_EmitConvertToTarget, 2, |
| 885 | /* 1475*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 886 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 887 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 888 | // Dst: (ATOMIC_RMW16_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 889 | /* 1485*/ 0, // EndSwitchType |
| 890 | /* 1486*/ /*Scope*/ 91, /*->1578*/ |
| 891 | /* 1487*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 892 | /* 1490*/ OPC_MoveChild0, |
| 893 | /* 1491*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 894 | /* 1494*/ OPC_MoveChild0, |
| 895 | /* 1495*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 896 | /* 1498*/ OPC_RecordMemRef, |
| 897 | /* 1499*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 898 | /* 1500*/ OPC_CheckFoldableChainNode, |
| 899 | /* 1501*/ OPC_MoveChild1, |
| 900 | /* 1502*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 901 | /* 1505*/ OPC_RecordChild0, // #1 = $addr |
| 902 | /* 1506*/ OPC_RecordChild1, // #2 = $off |
| 903 | /* 1507*/ OPC_MoveChild1, |
| 904 | /* 1508*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 905 | /* 1511*/ OPC_MoveParent, |
| 906 | /* 1512*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 907 | /* 1514*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->1546 |
| 908 | /* 1517*/ OPC_MoveParent, |
| 909 | /* 1518*/ OPC_MoveChild2, |
| 910 | /* 1519*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 911 | /* 1522*/ OPC_RecordChild0, // #3 = $val |
| 912 | /* 1523*/ OPC_MoveParent, |
| 913 | /* 1524*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 914 | /* 1526*/ OPC_MoveParent, |
| 915 | /* 1527*/ OPC_MoveParent, |
| 916 | /* 1528*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 917 | /* 1530*/ OPC_EmitMergeInputChains1_0, |
| 918 | /* 1531*/ OPC_EmitInteger, MVT::i32, 0, |
| 919 | /* 1534*/ OPC_EmitConvertToTarget, 2, |
| 920 | /* 1536*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 921 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 922 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 923 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 924 | /* 1546*/ /*SwitchType*/ 29, MVT::i64,// ->1577 |
| 925 | /* 1548*/ OPC_MoveParent, |
| 926 | /* 1549*/ OPC_MoveChild2, |
| 927 | /* 1550*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 928 | /* 1553*/ OPC_RecordChild0, // #3 = $val |
| 929 | /* 1554*/ OPC_MoveParent, |
| 930 | /* 1555*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 931 | /* 1557*/ OPC_MoveParent, |
| 932 | /* 1558*/ OPC_MoveParent, |
| 933 | /* 1559*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 934 | /* 1561*/ OPC_EmitMergeInputChains1_0, |
| 935 | /* 1562*/ OPC_EmitInteger, MVT::i32, 0, |
| 936 | /* 1565*/ OPC_EmitConvertToTarget, 2, |
| 937 | /* 1567*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 938 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 939 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 940 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 941 | /* 1577*/ 0, // EndSwitchType |
| 942 | /* 1578*/ /*Scope*/ 92, /*->1671*/ |
| 943 | /* 1579*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 944 | /* 1583*/ OPC_MoveChild0, |
| 945 | /* 1584*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 946 | /* 1587*/ OPC_MoveChild0, |
| 947 | /* 1588*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 948 | /* 1591*/ OPC_RecordMemRef, |
| 949 | /* 1592*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 950 | /* 1593*/ OPC_CheckFoldableChainNode, |
| 951 | /* 1594*/ OPC_MoveChild1, |
| 952 | /* 1595*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 953 | /* 1598*/ OPC_RecordChild0, // #1 = $addr |
| 954 | /* 1599*/ OPC_RecordChild1, // #2 = $off |
| 955 | /* 1600*/ OPC_MoveChild1, |
| 956 | /* 1601*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 957 | /* 1604*/ OPC_MoveParent, |
| 958 | /* 1605*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 959 | /* 1607*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->1639 |
| 960 | /* 1610*/ OPC_MoveParent, |
| 961 | /* 1611*/ OPC_MoveChild2, |
| 962 | /* 1612*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 963 | /* 1615*/ OPC_RecordChild0, // #3 = $val |
| 964 | /* 1616*/ OPC_MoveParent, |
| 965 | /* 1617*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 966 | /* 1619*/ OPC_MoveParent, |
| 967 | /* 1620*/ OPC_MoveParent, |
| 968 | /* 1621*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 969 | /* 1623*/ OPC_EmitMergeInputChains1_0, |
| 970 | /* 1624*/ OPC_EmitInteger, MVT::i32, 0, |
| 971 | /* 1627*/ OPC_EmitConvertToTarget, 2, |
| 972 | /* 1629*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 973 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 974 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 975 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 976 | /* 1639*/ /*SwitchType*/ 29, MVT::i64,// ->1670 |
| 977 | /* 1641*/ OPC_MoveParent, |
| 978 | /* 1642*/ OPC_MoveChild2, |
| 979 | /* 1643*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 980 | /* 1646*/ OPC_RecordChild0, // #3 = $val |
| 981 | /* 1647*/ OPC_MoveParent, |
| 982 | /* 1648*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 983 | /* 1650*/ OPC_MoveParent, |
| 984 | /* 1651*/ OPC_MoveParent, |
| 985 | /* 1652*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 986 | /* 1654*/ OPC_EmitMergeInputChains1_0, |
| 987 | /* 1655*/ OPC_EmitInteger, MVT::i32, 0, |
| 988 | /* 1658*/ OPC_EmitConvertToTarget, 2, |
| 989 | /* 1660*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 990 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 991 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 992 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 993 | /* 1670*/ 0, // EndSwitchType |
| 994 | /* 1671*/ /*Scope*/ 91, /*->1763*/ |
| 995 | /* 1672*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 996 | /* 1675*/ OPC_MoveChild0, |
| 997 | /* 1676*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 998 | /* 1679*/ OPC_MoveChild0, |
| 999 | /* 1680*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 1000 | /* 1683*/ OPC_RecordMemRef, |
| 1001 | /* 1684*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 1002 | /* 1685*/ OPC_CheckFoldableChainNode, |
| 1003 | /* 1686*/ OPC_MoveChild1, |
| 1004 | /* 1687*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 1005 | /* 1690*/ OPC_RecordChild0, // #1 = $addr |
| 1006 | /* 1691*/ OPC_RecordChild1, // #2 = $off |
| 1007 | /* 1692*/ OPC_MoveChild1, |
| 1008 | /* 1693*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 1009 | /* 1696*/ OPC_MoveParent, |
| 1010 | /* 1697*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 1011 | /* 1699*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->1731 |
| 1012 | /* 1702*/ OPC_MoveParent, |
| 1013 | /* 1703*/ OPC_MoveChild2, |
| 1014 | /* 1704*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1015 | /* 1707*/ OPC_RecordChild0, // #3 = $val |
| 1016 | /* 1708*/ OPC_MoveParent, |
| 1017 | /* 1709*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 1018 | /* 1711*/ OPC_MoveParent, |
| 1019 | /* 1712*/ OPC_MoveParent, |
| 1020 | /* 1713*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 1021 | /* 1715*/ OPC_EmitMergeInputChains1_0, |
| 1022 | /* 1716*/ OPC_EmitInteger, MVT::i32, 0, |
| 1023 | /* 1719*/ OPC_EmitConvertToTarget, 2, |
| 1024 | /* 1721*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1025 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 1026 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 1027 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 1028 | /* 1731*/ /*SwitchType*/ 29, MVT::i64,// ->1762 |
| 1029 | /* 1733*/ OPC_MoveParent, |
| 1030 | /* 1734*/ OPC_MoveChild2, |
| 1031 | /* 1735*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1032 | /* 1738*/ OPC_RecordChild0, // #3 = $val |
| 1033 | /* 1739*/ OPC_MoveParent, |
| 1034 | /* 1740*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 1035 | /* 1742*/ OPC_MoveParent, |
| 1036 | /* 1743*/ OPC_MoveParent, |
| 1037 | /* 1744*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 1038 | /* 1746*/ OPC_EmitMergeInputChains1_0, |
| 1039 | /* 1747*/ OPC_EmitInteger, MVT::i32, 0, |
| 1040 | /* 1750*/ OPC_EmitConvertToTarget, 2, |
| 1041 | /* 1752*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1042 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 1043 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 1044 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 1045 | /* 1762*/ 0, // EndSwitchType |
| 1046 | /* 1763*/ /*Scope*/ 92, /*->1856*/ |
| 1047 | /* 1764*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 1048 | /* 1768*/ OPC_MoveChild0, |
| 1049 | /* 1769*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1050 | /* 1772*/ OPC_MoveChild0, |
| 1051 | /* 1773*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 1052 | /* 1776*/ OPC_RecordMemRef, |
| 1053 | /* 1777*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 1054 | /* 1778*/ OPC_CheckFoldableChainNode, |
| 1055 | /* 1779*/ OPC_MoveChild1, |
| 1056 | /* 1780*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 1057 | /* 1783*/ OPC_RecordChild0, // #1 = $addr |
| 1058 | /* 1784*/ OPC_RecordChild1, // #2 = $off |
| 1059 | /* 1785*/ OPC_MoveChild1, |
| 1060 | /* 1786*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 1061 | /* 1789*/ OPC_MoveParent, |
| 1062 | /* 1790*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 1063 | /* 1792*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->1824 |
| 1064 | /* 1795*/ OPC_MoveParent, |
| 1065 | /* 1796*/ OPC_MoveChild2, |
| 1066 | /* 1797*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1067 | /* 1800*/ OPC_RecordChild0, // #3 = $val |
| 1068 | /* 1801*/ OPC_MoveParent, |
| 1069 | /* 1802*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 1070 | /* 1804*/ OPC_MoveParent, |
| 1071 | /* 1805*/ OPC_MoveParent, |
| 1072 | /* 1806*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 1073 | /* 1808*/ OPC_EmitMergeInputChains1_0, |
| 1074 | /* 1809*/ OPC_EmitInteger, MVT::i32, 0, |
| 1075 | /* 1812*/ OPC_EmitConvertToTarget, 2, |
| 1076 | /* 1814*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1077 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 1078 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 1079 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 1080 | /* 1824*/ /*SwitchType*/ 29, MVT::i64,// ->1855 |
| 1081 | /* 1826*/ OPC_MoveParent, |
| 1082 | /* 1827*/ OPC_MoveChild2, |
| 1083 | /* 1828*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1084 | /* 1831*/ OPC_RecordChild0, // #3 = $val |
| 1085 | /* 1832*/ OPC_MoveParent, |
| 1086 | /* 1833*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 1087 | /* 1835*/ OPC_MoveParent, |
| 1088 | /* 1836*/ OPC_MoveParent, |
| 1089 | /* 1837*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 1090 | /* 1839*/ OPC_EmitMergeInputChains1_0, |
| 1091 | /* 1840*/ OPC_EmitInteger, MVT::i32, 0, |
| 1092 | /* 1843*/ OPC_EmitConvertToTarget, 2, |
| 1093 | /* 1845*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1094 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 1095 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 1096 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 1097 | /* 1855*/ 0, // EndSwitchType |
| 1098 | /* 1856*/ /*Scope*/ 91, /*->1948*/ |
| 1099 | /* 1857*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 1100 | /* 1860*/ OPC_MoveChild0, |
| 1101 | /* 1861*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1102 | /* 1864*/ OPC_MoveChild0, |
| 1103 | /* 1865*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 1104 | /* 1868*/ OPC_RecordMemRef, |
| 1105 | /* 1869*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 1106 | /* 1870*/ OPC_CheckFoldableChainNode, |
| 1107 | /* 1871*/ OPC_MoveChild1, |
| 1108 | /* 1872*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 1109 | /* 1875*/ OPC_RecordChild0, // #1 = $addr |
| 1110 | /* 1876*/ OPC_RecordChild1, // #2 = $off |
| 1111 | /* 1877*/ OPC_MoveChild1, |
| 1112 | /* 1878*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 1113 | /* 1881*/ OPC_MoveParent, |
| 1114 | /* 1882*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 1115 | /* 1884*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->1916 |
| 1116 | /* 1887*/ OPC_MoveParent, |
| 1117 | /* 1888*/ OPC_MoveChild2, |
| 1118 | /* 1889*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1119 | /* 1892*/ OPC_RecordChild0, // #3 = $val |
| 1120 | /* 1893*/ OPC_MoveParent, |
| 1121 | /* 1894*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 1122 | /* 1896*/ OPC_MoveParent, |
| 1123 | /* 1897*/ OPC_MoveParent, |
| 1124 | /* 1898*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 1125 | /* 1900*/ OPC_EmitMergeInputChains1_0, |
| 1126 | /* 1901*/ OPC_EmitInteger, MVT::i32, 0, |
| 1127 | /* 1904*/ OPC_EmitConvertToTarget, 2, |
| 1128 | /* 1906*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1129 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 1130 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 1131 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 1132 | /* 1916*/ /*SwitchType*/ 29, MVT::i64,// ->1947 |
| 1133 | /* 1918*/ OPC_MoveParent, |
| 1134 | /* 1919*/ OPC_MoveChild2, |
| 1135 | /* 1920*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1136 | /* 1923*/ OPC_RecordChild0, // #3 = $val |
| 1137 | /* 1924*/ OPC_MoveParent, |
| 1138 | /* 1925*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 1139 | /* 1927*/ OPC_MoveParent, |
| 1140 | /* 1928*/ OPC_MoveParent, |
| 1141 | /* 1929*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 1142 | /* 1931*/ OPC_EmitMergeInputChains1_0, |
| 1143 | /* 1932*/ OPC_EmitInteger, MVT::i32, 0, |
| 1144 | /* 1935*/ OPC_EmitConvertToTarget, 2, |
| 1145 | /* 1937*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1146 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 1147 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 1148 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 1149 | /* 1947*/ 0, // EndSwitchType |
| 1150 | /* 1948*/ /*Scope*/ 92, /*->2041*/ |
| 1151 | /* 1949*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 1152 | /* 1953*/ OPC_MoveChild0, |
| 1153 | /* 1954*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1154 | /* 1957*/ OPC_MoveChild0, |
| 1155 | /* 1958*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 1156 | /* 1961*/ OPC_RecordMemRef, |
| 1157 | /* 1962*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 1158 | /* 1963*/ OPC_CheckFoldableChainNode, |
| 1159 | /* 1964*/ OPC_MoveChild1, |
| 1160 | /* 1965*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 1161 | /* 1968*/ OPC_RecordChild0, // #1 = $addr |
| 1162 | /* 1969*/ OPC_RecordChild1, // #2 = $off |
| 1163 | /* 1970*/ OPC_MoveChild1, |
| 1164 | /* 1971*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 1165 | /* 1974*/ OPC_MoveParent, |
| 1166 | /* 1975*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 1167 | /* 1977*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->2009 |
| 1168 | /* 1980*/ OPC_MoveParent, |
| 1169 | /* 1981*/ OPC_MoveChild2, |
| 1170 | /* 1982*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1171 | /* 1985*/ OPC_RecordChild0, // #3 = $val |
| 1172 | /* 1986*/ OPC_MoveParent, |
| 1173 | /* 1987*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 1174 | /* 1989*/ OPC_MoveParent, |
| 1175 | /* 1990*/ OPC_MoveParent, |
| 1176 | /* 1991*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 1177 | /* 1993*/ OPC_EmitMergeInputChains1_0, |
| 1178 | /* 1994*/ OPC_EmitInteger, MVT::i32, 0, |
| 1179 | /* 1997*/ OPC_EmitConvertToTarget, 2, |
| 1180 | /* 1999*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1181 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 1182 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 1183 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 1184 | /* 2009*/ /*SwitchType*/ 29, MVT::i64,// ->2040 |
| 1185 | /* 2011*/ OPC_MoveParent, |
| 1186 | /* 2012*/ OPC_MoveChild2, |
| 1187 | /* 2013*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1188 | /* 2016*/ OPC_RecordChild0, // #3 = $val |
| 1189 | /* 2017*/ OPC_MoveParent, |
| 1190 | /* 2018*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 1191 | /* 2020*/ OPC_MoveParent, |
| 1192 | /* 2021*/ OPC_MoveParent, |
| 1193 | /* 2022*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 1194 | /* 2024*/ OPC_EmitMergeInputChains1_0, |
| 1195 | /* 2025*/ OPC_EmitInteger, MVT::i32, 0, |
| 1196 | /* 2028*/ OPC_EmitConvertToTarget, 2, |
| 1197 | /* 2030*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1198 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 1199 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 1200 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 1201 | /* 2040*/ 0, // EndSwitchType |
| 1202 | /* 2041*/ /*Scope*/ 91, /*->2133*/ |
| 1203 | /* 2042*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 1204 | /* 2045*/ OPC_MoveChild0, |
| 1205 | /* 2046*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1206 | /* 2049*/ OPC_MoveChild0, |
| 1207 | /* 2050*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 1208 | /* 2053*/ OPC_RecordMemRef, |
| 1209 | /* 2054*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 1210 | /* 2055*/ OPC_CheckFoldableChainNode, |
| 1211 | /* 2056*/ OPC_MoveChild1, |
| 1212 | /* 2057*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 1213 | /* 2060*/ OPC_RecordChild0, // #1 = $addr |
| 1214 | /* 2061*/ OPC_RecordChild1, // #2 = $off |
| 1215 | /* 2062*/ OPC_MoveChild1, |
| 1216 | /* 2063*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 1217 | /* 2066*/ OPC_MoveParent, |
| 1218 | /* 2067*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 1219 | /* 2069*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->2101 |
| 1220 | /* 2072*/ OPC_MoveParent, |
| 1221 | /* 2073*/ OPC_MoveChild2, |
| 1222 | /* 2074*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1223 | /* 2077*/ OPC_RecordChild0, // #3 = $val |
| 1224 | /* 2078*/ OPC_MoveParent, |
| 1225 | /* 2079*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 1226 | /* 2081*/ OPC_MoveParent, |
| 1227 | /* 2082*/ OPC_MoveParent, |
| 1228 | /* 2083*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 1229 | /* 2085*/ OPC_EmitMergeInputChains1_0, |
| 1230 | /* 2086*/ OPC_EmitInteger, MVT::i32, 0, |
| 1231 | /* 2089*/ OPC_EmitConvertToTarget, 2, |
| 1232 | /* 2091*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1233 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 1234 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 1235 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 1236 | /* 2101*/ /*SwitchType*/ 29, MVT::i64,// ->2132 |
| 1237 | /* 2103*/ OPC_MoveParent, |
| 1238 | /* 2104*/ OPC_MoveChild2, |
| 1239 | /* 2105*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1240 | /* 2108*/ OPC_RecordChild0, // #3 = $val |
| 1241 | /* 2109*/ OPC_MoveParent, |
| 1242 | /* 2110*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 1243 | /* 2112*/ OPC_MoveParent, |
| 1244 | /* 2113*/ OPC_MoveParent, |
| 1245 | /* 2114*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 1246 | /* 2116*/ OPC_EmitMergeInputChains1_0, |
| 1247 | /* 2117*/ OPC_EmitInteger, MVT::i32, 0, |
| 1248 | /* 2120*/ OPC_EmitConvertToTarget, 2, |
| 1249 | /* 2122*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1250 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 1251 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>), 255:{ *:[i64] }) - Complexity = 25 |
| 1252 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 1253 | /* 2132*/ 0, // EndSwitchType |
| 1254 | /* 2133*/ /*Scope*/ 92, /*->2226*/ |
| 1255 | /* 2134*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 1256 | /* 2138*/ OPC_MoveChild0, |
| 1257 | /* 2139*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1258 | /* 2142*/ OPC_MoveChild0, |
| 1259 | /* 2143*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 1260 | /* 2146*/ OPC_RecordMemRef, |
| 1261 | /* 2147*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 1262 | /* 2148*/ OPC_CheckFoldableChainNode, |
| 1263 | /* 2149*/ OPC_MoveChild1, |
| 1264 | /* 2150*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 1265 | /* 2153*/ OPC_RecordChild0, // #1 = $addr |
| 1266 | /* 2154*/ OPC_RecordChild1, // #2 = $off |
| 1267 | /* 2155*/ OPC_MoveChild1, |
| 1268 | /* 2156*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 1269 | /* 2159*/ OPC_MoveParent, |
| 1270 | /* 2160*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 1271 | /* 2162*/ OPC_SwitchType /*2 cases */, 29, MVT::i32,// ->2194 |
| 1272 | /* 2165*/ OPC_MoveParent, |
| 1273 | /* 2166*/ OPC_MoveChild2, |
| 1274 | /* 2167*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1275 | /* 2170*/ OPC_RecordChild0, // #3 = $val |
| 1276 | /* 2171*/ OPC_MoveParent, |
| 1277 | /* 2172*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 1278 | /* 2174*/ OPC_MoveParent, |
| 1279 | /* 2175*/ OPC_MoveParent, |
| 1280 | /* 2176*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 1281 | /* 2178*/ OPC_EmitMergeInputChains1_0, |
| 1282 | /* 2179*/ OPC_EmitInteger, MVT::i32, 0, |
| 1283 | /* 2182*/ OPC_EmitConvertToTarget, 2, |
| 1284 | /* 2184*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1285 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 1286 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 1287 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 1288 | /* 2194*/ /*SwitchType*/ 29, MVT::i64,// ->2225 |
| 1289 | /* 2196*/ OPC_MoveParent, |
| 1290 | /* 2197*/ OPC_MoveChild2, |
| 1291 | /* 2198*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1292 | /* 2201*/ OPC_RecordChild0, // #3 = $val |
| 1293 | /* 2202*/ OPC_MoveParent, |
| 1294 | /* 2203*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 1295 | /* 2205*/ OPC_MoveParent, |
| 1296 | /* 2206*/ OPC_MoveParent, |
| 1297 | /* 2207*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 1298 | /* 2209*/ OPC_EmitMergeInputChains1_0, |
| 1299 | /* 2210*/ OPC_EmitInteger, MVT::i32, 0, |
| 1300 | /* 2213*/ OPC_EmitConvertToTarget, 2, |
| 1301 | /* 2215*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1302 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 1303 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>), 65535:{ *:[i64] }) - Complexity = 25 |
| 1304 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 1305 | /* 2225*/ 0, // EndSwitchType |
| 1306 | /* 2226*/ /*Scope*/ 91, /*->2318*/ |
| 1307 | /* 2227*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 1308 | /* 2230*/ OPC_MoveChild0, |
| 1309 | /* 2231*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1310 | /* 2234*/ OPC_MoveChild0, |
| 1311 | /* 2235*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 1312 | /* 2238*/ OPC_RecordMemRef, |
| 1313 | /* 2239*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 1314 | /* 2240*/ OPC_CheckFoldableChainNode, |
| 1315 | /* 2241*/ OPC_MoveChild1, |
| 1316 | /* 2242*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 1317 | /* 2245*/ OPC_RecordChild0, // #1 = $off |
| 1318 | /* 2246*/ OPC_MoveChild0, |
| 1319 | /* 2247*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 1320 | /* 2250*/ OPC_MoveParent, |
| 1321 | /* 2251*/ OPC_MoveParent, |
| 1322 | /* 2252*/ OPC_MoveChild2, |
| 1323 | /* 2253*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1324 | /* 2256*/ OPC_RecordChild0, // #2 = $val |
| 1325 | /* 2257*/ OPC_MoveParent, |
| 1326 | /* 2258*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 1327 | /* 2260*/ OPC_MoveParent, |
| 1328 | /* 2261*/ OPC_MoveParent, |
| 1329 | /* 2262*/ OPC_Scope, 26, /*->2290*/ // 2 children in Scope |
| 1330 | /* 2264*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1331 | /* 2266*/ OPC_EmitMergeInputChains1_0, |
| 1332 | /* 2267*/ OPC_EmitInteger, MVT::i32, 0, |
| 1333 | /* 2270*/ OPC_EmitInteger, MVT::i32, 0, |
| 1334 | /* 2273*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 1335 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 1336 | /* 2280*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1337 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1338 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>), 255:{ *:[i64] }) - Complexity = 24 |
| 1339 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 1340 | /* 2290*/ /*Scope*/ 26, /*->2317*/ |
| 1341 | /* 2291*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1342 | /* 2293*/ OPC_EmitMergeInputChains1_0, |
| 1343 | /* 2294*/ OPC_EmitInteger, MVT::i32, 0, |
| 1344 | /* 2297*/ OPC_EmitInteger, MVT::i64, 0, |
| 1345 | /* 2300*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 1346 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 1347 | /* 2307*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1348 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1349 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>), 255:{ *:[i64] }) - Complexity = 24 |
| 1350 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 1351 | /* 2317*/ 0, /*End of Scope*/ |
| 1352 | /* 2318*/ /*Scope*/ 92, /*->2411*/ |
| 1353 | /* 2319*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 1354 | /* 2323*/ OPC_MoveChild0, |
| 1355 | /* 2324*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1356 | /* 2327*/ OPC_MoveChild0, |
| 1357 | /* 2328*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 1358 | /* 2331*/ OPC_RecordMemRef, |
| 1359 | /* 2332*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 1360 | /* 2333*/ OPC_CheckFoldableChainNode, |
| 1361 | /* 2334*/ OPC_MoveChild1, |
| 1362 | /* 2335*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 1363 | /* 2338*/ OPC_RecordChild0, // #1 = $off |
| 1364 | /* 2339*/ OPC_MoveChild0, |
| 1365 | /* 2340*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 1366 | /* 2343*/ OPC_MoveParent, |
| 1367 | /* 2344*/ OPC_MoveParent, |
| 1368 | /* 2345*/ OPC_MoveChild2, |
| 1369 | /* 2346*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1370 | /* 2349*/ OPC_RecordChild0, // #2 = $val |
| 1371 | /* 2350*/ OPC_MoveParent, |
| 1372 | /* 2351*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 1373 | /* 2353*/ OPC_MoveParent, |
| 1374 | /* 2354*/ OPC_MoveParent, |
| 1375 | /* 2355*/ OPC_Scope, 26, /*->2383*/ // 2 children in Scope |
| 1376 | /* 2357*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1377 | /* 2359*/ OPC_EmitMergeInputChains1_0, |
| 1378 | /* 2360*/ OPC_EmitInteger, MVT::i32, 0, |
| 1379 | /* 2363*/ OPC_EmitInteger, MVT::i32, 0, |
| 1380 | /* 2366*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 1381 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 1382 | /* 2373*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1383 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1384 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>), 65535:{ *:[i64] }) - Complexity = 24 |
| 1385 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 1386 | /* 2383*/ /*Scope*/ 26, /*->2410*/ |
| 1387 | /* 2384*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1388 | /* 2386*/ OPC_EmitMergeInputChains1_0, |
| 1389 | /* 2387*/ OPC_EmitInteger, MVT::i32, 0, |
| 1390 | /* 2390*/ OPC_EmitInteger, MVT::i64, 0, |
| 1391 | /* 2393*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 1392 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 1393 | /* 2400*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1394 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1395 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>), 65535:{ *:[i64] }) - Complexity = 24 |
| 1396 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 1397 | /* 2410*/ 0, /*End of Scope*/ |
| 1398 | /* 2411*/ /*Scope*/ 91, /*->2503*/ |
| 1399 | /* 2412*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 1400 | /* 2415*/ OPC_MoveChild0, |
| 1401 | /* 2416*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1402 | /* 2419*/ OPC_MoveChild0, |
| 1403 | /* 2420*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 1404 | /* 2423*/ OPC_RecordMemRef, |
| 1405 | /* 2424*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 1406 | /* 2425*/ OPC_CheckFoldableChainNode, |
| 1407 | /* 2426*/ OPC_MoveChild1, |
| 1408 | /* 2427*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 1409 | /* 2430*/ OPC_RecordChild0, // #1 = $off |
| 1410 | /* 2431*/ OPC_MoveChild0, |
| 1411 | /* 2432*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 1412 | /* 2435*/ OPC_MoveParent, |
| 1413 | /* 2436*/ OPC_MoveParent, |
| 1414 | /* 2437*/ OPC_MoveChild2, |
| 1415 | /* 2438*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1416 | /* 2441*/ OPC_RecordChild0, // #2 = $val |
| 1417 | /* 2442*/ OPC_MoveParent, |
| 1418 | /* 2443*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 1419 | /* 2445*/ OPC_MoveParent, |
| 1420 | /* 2446*/ OPC_MoveParent, |
| 1421 | /* 2447*/ OPC_Scope, 26, /*->2475*/ // 2 children in Scope |
| 1422 | /* 2449*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1423 | /* 2451*/ OPC_EmitMergeInputChains1_0, |
| 1424 | /* 2452*/ OPC_EmitInteger, MVT::i32, 0, |
| 1425 | /* 2455*/ OPC_EmitInteger, MVT::i32, 0, |
| 1426 | /* 2458*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 1427 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 1428 | /* 2465*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1429 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1430 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>), 255:{ *:[i64] }) - Complexity = 24 |
| 1431 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 1432 | /* 2475*/ /*Scope*/ 26, /*->2502*/ |
| 1433 | /* 2476*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1434 | /* 2478*/ OPC_EmitMergeInputChains1_0, |
| 1435 | /* 2479*/ OPC_EmitInteger, MVT::i32, 0, |
| 1436 | /* 2482*/ OPC_EmitInteger, MVT::i64, 0, |
| 1437 | /* 2485*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 1438 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 1439 | /* 2492*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1440 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1441 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>), 255:{ *:[i64] }) - Complexity = 24 |
| 1442 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 1443 | /* 2502*/ 0, /*End of Scope*/ |
| 1444 | /* 2503*/ /*Scope*/ 92, /*->2596*/ |
| 1445 | /* 2504*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 1446 | /* 2508*/ OPC_MoveChild0, |
| 1447 | /* 2509*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1448 | /* 2512*/ OPC_MoveChild0, |
| 1449 | /* 2513*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 1450 | /* 2516*/ OPC_RecordMemRef, |
| 1451 | /* 2517*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 1452 | /* 2518*/ OPC_CheckFoldableChainNode, |
| 1453 | /* 2519*/ OPC_MoveChild1, |
| 1454 | /* 2520*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 1455 | /* 2523*/ OPC_RecordChild0, // #1 = $off |
| 1456 | /* 2524*/ OPC_MoveChild0, |
| 1457 | /* 2525*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 1458 | /* 2528*/ OPC_MoveParent, |
| 1459 | /* 2529*/ OPC_MoveParent, |
| 1460 | /* 2530*/ OPC_MoveChild2, |
| 1461 | /* 2531*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1462 | /* 2534*/ OPC_RecordChild0, // #2 = $val |
| 1463 | /* 2535*/ OPC_MoveParent, |
| 1464 | /* 2536*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 1465 | /* 2538*/ OPC_MoveParent, |
| 1466 | /* 2539*/ OPC_MoveParent, |
| 1467 | /* 2540*/ OPC_Scope, 26, /*->2568*/ // 2 children in Scope |
| 1468 | /* 2542*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1469 | /* 2544*/ OPC_EmitMergeInputChains1_0, |
| 1470 | /* 2545*/ OPC_EmitInteger, MVT::i32, 0, |
| 1471 | /* 2548*/ OPC_EmitInteger, MVT::i32, 0, |
| 1472 | /* 2551*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 1473 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 1474 | /* 2558*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1475 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1476 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>), 65535:{ *:[i64] }) - Complexity = 24 |
| 1477 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 1478 | /* 2568*/ /*Scope*/ 26, /*->2595*/ |
| 1479 | /* 2569*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1480 | /* 2571*/ OPC_EmitMergeInputChains1_0, |
| 1481 | /* 2572*/ OPC_EmitInteger, MVT::i32, 0, |
| 1482 | /* 2575*/ OPC_EmitInteger, MVT::i64, 0, |
| 1483 | /* 2578*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 1484 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 1485 | /* 2585*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1486 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1487 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>), 65535:{ *:[i64] }) - Complexity = 24 |
| 1488 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 1489 | /* 2595*/ 0, /*End of Scope*/ |
| 1490 | /* 2596*/ /*Scope*/ 91, /*->2688*/ |
| 1491 | /* 2597*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 1492 | /* 2600*/ OPC_MoveChild0, |
| 1493 | /* 2601*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1494 | /* 2604*/ OPC_MoveChild0, |
| 1495 | /* 2605*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 1496 | /* 2608*/ OPC_RecordMemRef, |
| 1497 | /* 2609*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 1498 | /* 2610*/ OPC_CheckFoldableChainNode, |
| 1499 | /* 2611*/ OPC_MoveChild1, |
| 1500 | /* 2612*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 1501 | /* 2615*/ OPC_RecordChild0, // #1 = $off |
| 1502 | /* 2616*/ OPC_MoveChild0, |
| 1503 | /* 2617*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 1504 | /* 2620*/ OPC_MoveParent, |
| 1505 | /* 2621*/ OPC_MoveParent, |
| 1506 | /* 2622*/ OPC_MoveChild2, |
| 1507 | /* 2623*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1508 | /* 2626*/ OPC_RecordChild0, // #2 = $val |
| 1509 | /* 2627*/ OPC_MoveParent, |
| 1510 | /* 2628*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 1511 | /* 2630*/ OPC_MoveParent, |
| 1512 | /* 2631*/ OPC_MoveParent, |
| 1513 | /* 2632*/ OPC_Scope, 26, /*->2660*/ // 2 children in Scope |
| 1514 | /* 2634*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1515 | /* 2636*/ OPC_EmitMergeInputChains1_0, |
| 1516 | /* 2637*/ OPC_EmitInteger, MVT::i32, 0, |
| 1517 | /* 2640*/ OPC_EmitInteger, MVT::i32, 0, |
| 1518 | /* 2643*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 1519 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 1520 | /* 2650*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1521 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1522 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>), 255:{ *:[i64] }) - Complexity = 24 |
| 1523 | // Dst: (ATOMIC_RMW8_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 1524 | /* 2660*/ /*Scope*/ 26, /*->2687*/ |
| 1525 | /* 2661*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1526 | /* 2663*/ OPC_EmitMergeInputChains1_0, |
| 1527 | /* 2664*/ OPC_EmitInteger, MVT::i32, 0, |
| 1528 | /* 2667*/ OPC_EmitInteger, MVT::i64, 0, |
| 1529 | /* 2670*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 1530 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 1531 | /* 2677*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1532 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1533 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>), 255:{ *:[i64] }) - Complexity = 24 |
| 1534 | // Dst: (ATOMIC_RMW8_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 1535 | /* 2687*/ 0, /*End of Scope*/ |
| 1536 | /* 2688*/ /*Scope*/ 92, /*->2781*/ |
| 1537 | /* 2689*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 1538 | /* 2693*/ OPC_MoveChild0, |
| 1539 | /* 2694*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1540 | /* 2697*/ OPC_MoveChild0, |
| 1541 | /* 2698*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 1542 | /* 2701*/ OPC_RecordMemRef, |
| 1543 | /* 2702*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 1544 | /* 2703*/ OPC_CheckFoldableChainNode, |
| 1545 | /* 2704*/ OPC_MoveChild1, |
| 1546 | /* 2705*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 1547 | /* 2708*/ OPC_RecordChild0, // #1 = $off |
| 1548 | /* 2709*/ OPC_MoveChild0, |
| 1549 | /* 2710*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 1550 | /* 2713*/ OPC_MoveParent, |
| 1551 | /* 2714*/ OPC_MoveParent, |
| 1552 | /* 2715*/ OPC_MoveChild2, |
| 1553 | /* 2716*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1554 | /* 2719*/ OPC_RecordChild0, // #2 = $val |
| 1555 | /* 2720*/ OPC_MoveParent, |
| 1556 | /* 2721*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 1557 | /* 2723*/ OPC_MoveParent, |
| 1558 | /* 2724*/ OPC_MoveParent, |
| 1559 | /* 2725*/ OPC_Scope, 26, /*->2753*/ // 2 children in Scope |
| 1560 | /* 2727*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1561 | /* 2729*/ OPC_EmitMergeInputChains1_0, |
| 1562 | /* 2730*/ OPC_EmitInteger, MVT::i32, 0, |
| 1563 | /* 2733*/ OPC_EmitInteger, MVT::i32, 0, |
| 1564 | /* 2736*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 1565 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 1566 | /* 2743*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1567 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1568 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>), 65535:{ *:[i64] }) - Complexity = 24 |
| 1569 | // Dst: (ATOMIC_RMW16_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 1570 | /* 2753*/ /*Scope*/ 26, /*->2780*/ |
| 1571 | /* 2754*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1572 | /* 2756*/ OPC_EmitMergeInputChains1_0, |
| 1573 | /* 2757*/ OPC_EmitInteger, MVT::i32, 0, |
| 1574 | /* 2760*/ OPC_EmitInteger, MVT::i64, 0, |
| 1575 | /* 2763*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 1576 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 1577 | /* 2770*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1578 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1579 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>), 65535:{ *:[i64] }) - Complexity = 24 |
| 1580 | // Dst: (ATOMIC_RMW16_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 1581 | /* 2780*/ 0, /*End of Scope*/ |
| 1582 | /* 2781*/ /*Scope*/ 91, /*->2873*/ |
| 1583 | /* 2782*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 1584 | /* 2785*/ OPC_MoveChild0, |
| 1585 | /* 2786*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1586 | /* 2789*/ OPC_MoveChild0, |
| 1587 | /* 2790*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 1588 | /* 2793*/ OPC_RecordMemRef, |
| 1589 | /* 2794*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 1590 | /* 2795*/ OPC_CheckFoldableChainNode, |
| 1591 | /* 2796*/ OPC_MoveChild1, |
| 1592 | /* 2797*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 1593 | /* 2800*/ OPC_RecordChild0, // #1 = $off |
| 1594 | /* 2801*/ OPC_MoveChild0, |
| 1595 | /* 2802*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 1596 | /* 2805*/ OPC_MoveParent, |
| 1597 | /* 2806*/ OPC_MoveParent, |
| 1598 | /* 2807*/ OPC_MoveChild2, |
| 1599 | /* 2808*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1600 | /* 2811*/ OPC_RecordChild0, // #2 = $val |
| 1601 | /* 2812*/ OPC_MoveParent, |
| 1602 | /* 2813*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 1603 | /* 2815*/ OPC_MoveParent, |
| 1604 | /* 2816*/ OPC_MoveParent, |
| 1605 | /* 2817*/ OPC_Scope, 26, /*->2845*/ // 2 children in Scope |
| 1606 | /* 2819*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1607 | /* 2821*/ OPC_EmitMergeInputChains1_0, |
| 1608 | /* 2822*/ OPC_EmitInteger, MVT::i32, 0, |
| 1609 | /* 2825*/ OPC_EmitInteger, MVT::i32, 0, |
| 1610 | /* 2828*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 1611 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 1612 | /* 2835*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1613 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1614 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>), 255:{ *:[i64] }) - Complexity = 24 |
| 1615 | // Dst: (ATOMIC_RMW8_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 1616 | /* 2845*/ /*Scope*/ 26, /*->2872*/ |
| 1617 | /* 2846*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1618 | /* 2848*/ OPC_EmitMergeInputChains1_0, |
| 1619 | /* 2849*/ OPC_EmitInteger, MVT::i32, 0, |
| 1620 | /* 2852*/ OPC_EmitInteger, MVT::i64, 0, |
| 1621 | /* 2855*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 1622 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 1623 | /* 2862*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1624 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1625 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>), 255:{ *:[i64] }) - Complexity = 24 |
| 1626 | // Dst: (ATOMIC_RMW8_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 1627 | /* 2872*/ 0, /*End of Scope*/ |
| 1628 | /* 2873*/ /*Scope*/ 92, /*->2966*/ |
| 1629 | /* 2874*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 1630 | /* 2878*/ OPC_MoveChild0, |
| 1631 | /* 2879*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1632 | /* 2882*/ OPC_MoveChild0, |
| 1633 | /* 2883*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 1634 | /* 2886*/ OPC_RecordMemRef, |
| 1635 | /* 2887*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 1636 | /* 2888*/ OPC_CheckFoldableChainNode, |
| 1637 | /* 2889*/ OPC_MoveChild1, |
| 1638 | /* 2890*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 1639 | /* 2893*/ OPC_RecordChild0, // #1 = $off |
| 1640 | /* 2894*/ OPC_MoveChild0, |
| 1641 | /* 2895*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 1642 | /* 2898*/ OPC_MoveParent, |
| 1643 | /* 2899*/ OPC_MoveParent, |
| 1644 | /* 2900*/ OPC_MoveChild2, |
| 1645 | /* 2901*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1646 | /* 2904*/ OPC_RecordChild0, // #2 = $val |
| 1647 | /* 2905*/ OPC_MoveParent, |
| 1648 | /* 2906*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 1649 | /* 2908*/ OPC_MoveParent, |
| 1650 | /* 2909*/ OPC_MoveParent, |
| 1651 | /* 2910*/ OPC_Scope, 26, /*->2938*/ // 2 children in Scope |
| 1652 | /* 2912*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1653 | /* 2914*/ OPC_EmitMergeInputChains1_0, |
| 1654 | /* 2915*/ OPC_EmitInteger, MVT::i32, 0, |
| 1655 | /* 2918*/ OPC_EmitInteger, MVT::i32, 0, |
| 1656 | /* 2921*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 1657 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 1658 | /* 2928*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1659 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1660 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>), 65535:{ *:[i64] }) - Complexity = 24 |
| 1661 | // Dst: (ATOMIC_RMW16_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 1662 | /* 2938*/ /*Scope*/ 26, /*->2965*/ |
| 1663 | /* 2939*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1664 | /* 2941*/ OPC_EmitMergeInputChains1_0, |
| 1665 | /* 2942*/ OPC_EmitInteger, MVT::i32, 0, |
| 1666 | /* 2945*/ OPC_EmitInteger, MVT::i64, 0, |
| 1667 | /* 2948*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 1668 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 1669 | /* 2955*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1670 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1671 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>), 65535:{ *:[i64] }) - Complexity = 24 |
| 1672 | // Dst: (ATOMIC_RMW16_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 1673 | /* 2965*/ 0, /*End of Scope*/ |
| 1674 | /* 2966*/ /*Scope*/ 91, /*->3058*/ |
| 1675 | /* 2967*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 1676 | /* 2970*/ OPC_MoveChild0, |
| 1677 | /* 2971*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1678 | /* 2974*/ OPC_MoveChild0, |
| 1679 | /* 2975*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 1680 | /* 2978*/ OPC_RecordMemRef, |
| 1681 | /* 2979*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 1682 | /* 2980*/ OPC_CheckFoldableChainNode, |
| 1683 | /* 2981*/ OPC_MoveChild1, |
| 1684 | /* 2982*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 1685 | /* 2985*/ OPC_RecordChild0, // #1 = $off |
| 1686 | /* 2986*/ OPC_MoveChild0, |
| 1687 | /* 2987*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 1688 | /* 2990*/ OPC_MoveParent, |
| 1689 | /* 2991*/ OPC_MoveParent, |
| 1690 | /* 2992*/ OPC_MoveChild2, |
| 1691 | /* 2993*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1692 | /* 2996*/ OPC_RecordChild0, // #2 = $val |
| 1693 | /* 2997*/ OPC_MoveParent, |
| 1694 | /* 2998*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 1695 | /* 3000*/ OPC_MoveParent, |
| 1696 | /* 3001*/ OPC_MoveParent, |
| 1697 | /* 3002*/ OPC_Scope, 26, /*->3030*/ // 2 children in Scope |
| 1698 | /* 3004*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1699 | /* 3006*/ OPC_EmitMergeInputChains1_0, |
| 1700 | /* 3007*/ OPC_EmitInteger, MVT::i32, 0, |
| 1701 | /* 3010*/ OPC_EmitInteger, MVT::i32, 0, |
| 1702 | /* 3013*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 1703 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 1704 | /* 3020*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1705 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1706 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>), 255:{ *:[i64] }) - Complexity = 24 |
| 1707 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 1708 | /* 3030*/ /*Scope*/ 26, /*->3057*/ |
| 1709 | /* 3031*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1710 | /* 3033*/ OPC_EmitMergeInputChains1_0, |
| 1711 | /* 3034*/ OPC_EmitInteger, MVT::i32, 0, |
| 1712 | /* 3037*/ OPC_EmitInteger, MVT::i64, 0, |
| 1713 | /* 3040*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 1714 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 1715 | /* 3047*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1716 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1717 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>), 255:{ *:[i64] }) - Complexity = 24 |
| 1718 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 1719 | /* 3057*/ 0, /*End of Scope*/ |
| 1720 | /* 3058*/ /*Scope*/ 92, /*->3151*/ |
| 1721 | /* 3059*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 1722 | /* 3063*/ OPC_MoveChild0, |
| 1723 | /* 3064*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1724 | /* 3067*/ OPC_MoveChild0, |
| 1725 | /* 3068*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 1726 | /* 3071*/ OPC_RecordMemRef, |
| 1727 | /* 3072*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 1728 | /* 3073*/ OPC_CheckFoldableChainNode, |
| 1729 | /* 3074*/ OPC_MoveChild1, |
| 1730 | /* 3075*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 1731 | /* 3078*/ OPC_RecordChild0, // #1 = $off |
| 1732 | /* 3079*/ OPC_MoveChild0, |
| 1733 | /* 3080*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 1734 | /* 3083*/ OPC_MoveParent, |
| 1735 | /* 3084*/ OPC_MoveParent, |
| 1736 | /* 3085*/ OPC_MoveChild2, |
| 1737 | /* 3086*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1738 | /* 3089*/ OPC_RecordChild0, // #2 = $val |
| 1739 | /* 3090*/ OPC_MoveParent, |
| 1740 | /* 3091*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 1741 | /* 3093*/ OPC_MoveParent, |
| 1742 | /* 3094*/ OPC_MoveParent, |
| 1743 | /* 3095*/ OPC_Scope, 26, /*->3123*/ // 2 children in Scope |
| 1744 | /* 3097*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1745 | /* 3099*/ OPC_EmitMergeInputChains1_0, |
| 1746 | /* 3100*/ OPC_EmitInteger, MVT::i32, 0, |
| 1747 | /* 3103*/ OPC_EmitInteger, MVT::i32, 0, |
| 1748 | /* 3106*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 1749 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 1750 | /* 3113*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1751 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1752 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>), 65535:{ *:[i64] }) - Complexity = 24 |
| 1753 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 1754 | /* 3123*/ /*Scope*/ 26, /*->3150*/ |
| 1755 | /* 3124*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1756 | /* 3126*/ OPC_EmitMergeInputChains1_0, |
| 1757 | /* 3127*/ OPC_EmitInteger, MVT::i32, 0, |
| 1758 | /* 3130*/ OPC_EmitInteger, MVT::i64, 0, |
| 1759 | /* 3133*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 1760 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 1761 | /* 3140*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1762 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1763 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>), 65535:{ *:[i64] }) - Complexity = 24 |
| 1764 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 1765 | /* 3150*/ 0, /*End of Scope*/ |
| 1766 | /* 3151*/ /*Scope*/ 91, /*->3243*/ |
| 1767 | /* 3152*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 1768 | /* 3155*/ OPC_MoveChild0, |
| 1769 | /* 3156*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1770 | /* 3159*/ OPC_MoveChild0, |
| 1771 | /* 3160*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 1772 | /* 3163*/ OPC_RecordMemRef, |
| 1773 | /* 3164*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 1774 | /* 3165*/ OPC_CheckFoldableChainNode, |
| 1775 | /* 3166*/ OPC_MoveChild1, |
| 1776 | /* 3167*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 1777 | /* 3170*/ OPC_RecordChild0, // #1 = $off |
| 1778 | /* 3171*/ OPC_MoveChild0, |
| 1779 | /* 3172*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 1780 | /* 3175*/ OPC_MoveParent, |
| 1781 | /* 3176*/ OPC_MoveParent, |
| 1782 | /* 3177*/ OPC_MoveChild2, |
| 1783 | /* 3178*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1784 | /* 3181*/ OPC_RecordChild0, // #2 = $val |
| 1785 | /* 3182*/ OPC_MoveParent, |
| 1786 | /* 3183*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 1787 | /* 3185*/ OPC_MoveParent, |
| 1788 | /* 3186*/ OPC_MoveParent, |
| 1789 | /* 3187*/ OPC_Scope, 26, /*->3215*/ // 2 children in Scope |
| 1790 | /* 3189*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1791 | /* 3191*/ OPC_EmitMergeInputChains1_0, |
| 1792 | /* 3192*/ OPC_EmitInteger, MVT::i32, 0, |
| 1793 | /* 3195*/ OPC_EmitInteger, MVT::i32, 0, |
| 1794 | /* 3198*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 1795 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 1796 | /* 3205*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1797 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1798 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>), 255:{ *:[i64] }) - Complexity = 24 |
| 1799 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 1800 | /* 3215*/ /*Scope*/ 26, /*->3242*/ |
| 1801 | /* 3216*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1802 | /* 3218*/ OPC_EmitMergeInputChains1_0, |
| 1803 | /* 3219*/ OPC_EmitInteger, MVT::i32, 0, |
| 1804 | /* 3222*/ OPC_EmitInteger, MVT::i64, 0, |
| 1805 | /* 3225*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 1806 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 1807 | /* 3232*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1808 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1809 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>), 255:{ *:[i64] }) - Complexity = 24 |
| 1810 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 1811 | /* 3242*/ 0, /*End of Scope*/ |
| 1812 | /* 3243*/ /*Scope*/ 92, /*->3336*/ |
| 1813 | /* 3244*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 1814 | /* 3248*/ OPC_MoveChild0, |
| 1815 | /* 3249*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1816 | /* 3252*/ OPC_MoveChild0, |
| 1817 | /* 3253*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 1818 | /* 3256*/ OPC_RecordMemRef, |
| 1819 | /* 3257*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 1820 | /* 3258*/ OPC_CheckFoldableChainNode, |
| 1821 | /* 3259*/ OPC_MoveChild1, |
| 1822 | /* 3260*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 1823 | /* 3263*/ OPC_RecordChild0, // #1 = $off |
| 1824 | /* 3264*/ OPC_MoveChild0, |
| 1825 | /* 3265*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 1826 | /* 3268*/ OPC_MoveParent, |
| 1827 | /* 3269*/ OPC_MoveParent, |
| 1828 | /* 3270*/ OPC_MoveChild2, |
| 1829 | /* 3271*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 1830 | /* 3274*/ OPC_RecordChild0, // #2 = $val |
| 1831 | /* 3275*/ OPC_MoveParent, |
| 1832 | /* 3276*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 1833 | /* 3278*/ OPC_MoveParent, |
| 1834 | /* 3279*/ OPC_MoveParent, |
| 1835 | /* 3280*/ OPC_Scope, 26, /*->3308*/ // 2 children in Scope |
| 1836 | /* 3282*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1837 | /* 3284*/ OPC_EmitMergeInputChains1_0, |
| 1838 | /* 3285*/ OPC_EmitInteger, MVT::i32, 0, |
| 1839 | /* 3288*/ OPC_EmitInteger, MVT::i32, 0, |
| 1840 | /* 3291*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 1841 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 1842 | /* 3298*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1843 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1844 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>), 65535:{ *:[i64] }) - Complexity = 24 |
| 1845 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 1846 | /* 3308*/ /*Scope*/ 26, /*->3335*/ |
| 1847 | /* 3309*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 1848 | /* 3311*/ OPC_EmitMergeInputChains1_0, |
| 1849 | /* 3312*/ OPC_EmitInteger, MVT::i32, 0, |
| 1850 | /* 3315*/ OPC_EmitInteger, MVT::i64, 0, |
| 1851 | /* 3318*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 1852 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 1853 | /* 3325*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1854 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 1855 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>), 65535:{ *:[i64] }) - Complexity = 24 |
| 1856 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 1857 | /* 3335*/ 0, /*End of Scope*/ |
| 1858 | /* 3336*/ /*Scope*/ 77, /*->3414*/ |
| 1859 | /* 3337*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 1860 | /* 3340*/ OPC_MoveChild0, |
| 1861 | /* 3341*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1862 | /* 3344*/ OPC_MoveChild0, |
| 1863 | /* 3345*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 1864 | /* 3348*/ OPC_RecordMemRef, |
| 1865 | /* 3349*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 1866 | /* 3350*/ OPC_CheckFoldableChainNode, |
| 1867 | /* 3351*/ OPC_MoveChild1, |
| 1868 | /* 3352*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 1869 | /* 3355*/ OPC_RecordChild0, // #1 = $addr |
| 1870 | /* 3356*/ OPC_RecordChild1, // #2 = $off |
| 1871 | /* 3357*/ OPC_MoveChild1, |
| 1872 | /* 3358*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 1873 | /* 3361*/ OPC_MoveParent, |
| 1874 | /* 3362*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 1875 | /* 3364*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->3389 |
| 1876 | /* 3367*/ OPC_MoveParent, |
| 1877 | /* 3368*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 1878 | /* 3370*/ OPC_MoveParent, |
| 1879 | /* 3371*/ OPC_MoveParent, |
| 1880 | /* 3372*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 1881 | /* 3374*/ OPC_EmitMergeInputChains1_0, |
| 1882 | /* 3375*/ OPC_EmitInteger, MVT::i32, 0, |
| 1883 | /* 3378*/ OPC_EmitConvertToTarget, 2, |
| 1884 | /* 3380*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1885 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 1886 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_8>>), 255:{ *:[i64] }) - Complexity = 22 |
| 1887 | // Dst: (ATOMIC_LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 1888 | /* 3389*/ /*SwitchType*/ 22, MVT::i64,// ->3413 |
| 1889 | /* 3391*/ OPC_MoveParent, |
| 1890 | /* 3392*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 1891 | /* 3394*/ OPC_MoveParent, |
| 1892 | /* 3395*/ OPC_MoveParent, |
| 1893 | /* 3396*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 1894 | /* 3398*/ OPC_EmitMergeInputChains1_0, |
| 1895 | /* 3399*/ OPC_EmitInteger, MVT::i32, 0, |
| 1896 | /* 3402*/ OPC_EmitConvertToTarget, 2, |
| 1897 | /* 3404*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1898 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 1899 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_8>>), 255:{ *:[i64] }) - Complexity = 22 |
| 1900 | // Dst: (ATOMIC_LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 1901 | /* 3413*/ 0, // EndSwitchType |
| 1902 | /* 3414*/ /*Scope*/ 78, /*->3493*/ |
| 1903 | /* 3415*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 1904 | /* 3419*/ OPC_MoveChild0, |
| 1905 | /* 3420*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1906 | /* 3423*/ OPC_MoveChild0, |
| 1907 | /* 3424*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 1908 | /* 3427*/ OPC_RecordMemRef, |
| 1909 | /* 3428*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 1910 | /* 3429*/ OPC_CheckFoldableChainNode, |
| 1911 | /* 3430*/ OPC_MoveChild1, |
| 1912 | /* 3431*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 1913 | /* 3434*/ OPC_RecordChild0, // #1 = $addr |
| 1914 | /* 3435*/ OPC_RecordChild1, // #2 = $off |
| 1915 | /* 3436*/ OPC_MoveChild1, |
| 1916 | /* 3437*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 1917 | /* 3440*/ OPC_MoveParent, |
| 1918 | /* 3441*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 1919 | /* 3443*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->3468 |
| 1920 | /* 3446*/ OPC_MoveParent, |
| 1921 | /* 3447*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 1922 | /* 3449*/ OPC_MoveParent, |
| 1923 | /* 3450*/ OPC_MoveParent, |
| 1924 | /* 3451*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 1925 | /* 3453*/ OPC_EmitMergeInputChains1_0, |
| 1926 | /* 3454*/ OPC_EmitInteger, MVT::i32, 0, |
| 1927 | /* 3457*/ OPC_EmitConvertToTarget, 2, |
| 1928 | /* 3459*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1929 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 1930 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_16>>), 65535:{ *:[i64] }) - Complexity = 22 |
| 1931 | // Dst: (ATOMIC_LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 1932 | /* 3468*/ /*SwitchType*/ 22, MVT::i64,// ->3492 |
| 1933 | /* 3470*/ OPC_MoveParent, |
| 1934 | /* 3471*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 1935 | /* 3473*/ OPC_MoveParent, |
| 1936 | /* 3474*/ OPC_MoveParent, |
| 1937 | /* 3475*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 1938 | /* 3477*/ OPC_EmitMergeInputChains1_0, |
| 1939 | /* 3478*/ OPC_EmitInteger, MVT::i32, 0, |
| 1940 | /* 3481*/ OPC_EmitConvertToTarget, 2, |
| 1941 | /* 3483*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1942 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 1943 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_16>>), 65535:{ *:[i64] }) - Complexity = 22 |
| 1944 | // Dst: (ATOMIC_LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 1945 | /* 3492*/ 0, // EndSwitchType |
| 1946 | /* 3493*/ /*Scope*/ 77, /*->3571*/ |
| 1947 | /* 3494*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 1948 | /* 3497*/ OPC_MoveChild0, |
| 1949 | /* 3498*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1950 | /* 3501*/ OPC_MoveChild0, |
| 1951 | /* 3502*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 1952 | /* 3505*/ OPC_RecordMemRef, |
| 1953 | /* 3506*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 1954 | /* 3507*/ OPC_CheckFoldableChainNode, |
| 1955 | /* 3508*/ OPC_MoveChild1, |
| 1956 | /* 3509*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 1957 | /* 3512*/ OPC_RecordChild0, // #1 = $addr |
| 1958 | /* 3513*/ OPC_RecordChild1, // #2 = $off |
| 1959 | /* 3514*/ OPC_MoveChild1, |
| 1960 | /* 3515*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 1961 | /* 3518*/ OPC_MoveParent, |
| 1962 | /* 3519*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 1963 | /* 3521*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->3546 |
| 1964 | /* 3524*/ OPC_MoveParent, |
| 1965 | /* 3525*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 1966 | /* 3527*/ OPC_MoveParent, |
| 1967 | /* 3528*/ OPC_MoveParent, |
| 1968 | /* 3529*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 1969 | /* 3531*/ OPC_EmitMergeInputChains1_0, |
| 1970 | /* 3532*/ OPC_EmitInteger, MVT::i32, 0, |
| 1971 | /* 3535*/ OPC_EmitConvertToTarget, 2, |
| 1972 | /* 3537*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 1973 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 1974 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_8>>), 255:{ *:[i64] }) - Complexity = 22 |
| 1975 | // Dst: (ATOMIC_LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 1976 | /* 3546*/ /*SwitchType*/ 22, MVT::i64,// ->3570 |
| 1977 | /* 3548*/ OPC_MoveParent, |
| 1978 | /* 3549*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 1979 | /* 3551*/ OPC_MoveParent, |
| 1980 | /* 3552*/ OPC_MoveParent, |
| 1981 | /* 3553*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 1982 | /* 3555*/ OPC_EmitMergeInputChains1_0, |
| 1983 | /* 3556*/ OPC_EmitInteger, MVT::i32, 0, |
| 1984 | /* 3559*/ OPC_EmitConvertToTarget, 2, |
| 1985 | /* 3561*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 1986 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 1987 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_8>>), 255:{ *:[i64] }) - Complexity = 22 |
| 1988 | // Dst: (ATOMIC_LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 1989 | /* 3570*/ 0, // EndSwitchType |
| 1990 | /* 3571*/ /*Scope*/ 78, /*->3650*/ |
| 1991 | /* 3572*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 1992 | /* 3576*/ OPC_MoveChild0, |
| 1993 | /* 3577*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 1994 | /* 3580*/ OPC_MoveChild0, |
| 1995 | /* 3581*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 1996 | /* 3584*/ OPC_RecordMemRef, |
| 1997 | /* 3585*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 1998 | /* 3586*/ OPC_CheckFoldableChainNode, |
| 1999 | /* 3587*/ OPC_MoveChild1, |
| 2000 | /* 3588*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 2001 | /* 3591*/ OPC_RecordChild0, // #1 = $addr |
| 2002 | /* 3592*/ OPC_RecordChild1, // #2 = $off |
| 2003 | /* 3593*/ OPC_MoveChild1, |
| 2004 | /* 3594*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2005 | /* 3597*/ OPC_MoveParent, |
| 2006 | /* 3598*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 2007 | /* 3600*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->3625 |
| 2008 | /* 3603*/ OPC_MoveParent, |
| 2009 | /* 3604*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 2010 | /* 3606*/ OPC_MoveParent, |
| 2011 | /* 3607*/ OPC_MoveParent, |
| 2012 | /* 3608*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 2013 | /* 3610*/ OPC_EmitMergeInputChains1_0, |
| 2014 | /* 3611*/ OPC_EmitInteger, MVT::i32, 0, |
| 2015 | /* 3614*/ OPC_EmitConvertToTarget, 2, |
| 2016 | /* 3616*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2017 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 2018 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_16>>), 65535:{ *:[i64] }) - Complexity = 22 |
| 2019 | // Dst: (ATOMIC_LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 2020 | /* 3625*/ /*SwitchType*/ 22, MVT::i64,// ->3649 |
| 2021 | /* 3627*/ OPC_MoveParent, |
| 2022 | /* 3628*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 2023 | /* 3630*/ OPC_MoveParent, |
| 2024 | /* 3631*/ OPC_MoveParent, |
| 2025 | /* 3632*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 2026 | /* 3634*/ OPC_EmitMergeInputChains1_0, |
| 2027 | /* 3635*/ OPC_EmitInteger, MVT::i32, 0, |
| 2028 | /* 3638*/ OPC_EmitConvertToTarget, 2, |
| 2029 | /* 3640*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2030 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 2031 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_16>>), 65535:{ *:[i64] }) - Complexity = 22 |
| 2032 | // Dst: (ATOMIC_LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 2033 | /* 3649*/ 0, // EndSwitchType |
| 2034 | /* 3650*/ /*Scope*/ 83, /*->3734*/ |
| 2035 | /* 3651*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 2036 | /* 3654*/ OPC_MoveChild0, |
| 2037 | /* 3655*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2038 | /* 3658*/ OPC_MoveChild0, |
| 2039 | /* 3659*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 2040 | /* 3662*/ OPC_RecordMemRef, |
| 2041 | /* 3663*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 2042 | /* 3664*/ OPC_CheckFoldableChainNode, |
| 2043 | /* 3665*/ OPC_MoveChild1, |
| 2044 | /* 3666*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 2045 | /* 3669*/ OPC_RecordChild0, // #1 = $off |
| 2046 | /* 3670*/ OPC_MoveChild0, |
| 2047 | /* 3671*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 2048 | /* 3674*/ OPC_MoveParent, |
| 2049 | /* 3675*/ OPC_MoveParent, |
| 2050 | /* 3676*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 2051 | /* 3678*/ OPC_MoveParent, |
| 2052 | /* 3679*/ OPC_MoveParent, |
| 2053 | /* 3680*/ OPC_Scope, 25, /*->3707*/ // 2 children in Scope |
| 2054 | /* 3682*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 2055 | /* 3684*/ OPC_EmitMergeInputChains1_0, |
| 2056 | /* 3685*/ OPC_EmitInteger, MVT::i32, 0, |
| 2057 | /* 3688*/ OPC_EmitInteger, MVT::i32, 0, |
| 2058 | /* 3691*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2059 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 2060 | /* 3698*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2061 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 2062 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2063 | // Dst: (ATOMIC_LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 2064 | /* 3707*/ /*Scope*/ 25, /*->3733*/ |
| 2065 | /* 3708*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 2066 | /* 3710*/ OPC_EmitMergeInputChains1_0, |
| 2067 | /* 3711*/ OPC_EmitInteger, MVT::i32, 0, |
| 2068 | /* 3714*/ OPC_EmitInteger, MVT::i64, 0, |
| 2069 | /* 3717*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2070 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 2071 | /* 3724*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2072 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 2073 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2074 | // Dst: (ATOMIC_LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 2075 | /* 3733*/ 0, /*End of Scope*/ |
| 2076 | /* 3734*/ /*Scope*/ 84, /*->3819*/ |
| 2077 | /* 3735*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 2078 | /* 3739*/ OPC_MoveChild0, |
| 2079 | /* 3740*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2080 | /* 3743*/ OPC_MoveChild0, |
| 2081 | /* 3744*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 2082 | /* 3747*/ OPC_RecordMemRef, |
| 2083 | /* 3748*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 2084 | /* 3749*/ OPC_CheckFoldableChainNode, |
| 2085 | /* 3750*/ OPC_MoveChild1, |
| 2086 | /* 3751*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 2087 | /* 3754*/ OPC_RecordChild0, // #1 = $off |
| 2088 | /* 3755*/ OPC_MoveChild0, |
| 2089 | /* 3756*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 2090 | /* 3759*/ OPC_MoveParent, |
| 2091 | /* 3760*/ OPC_MoveParent, |
| 2092 | /* 3761*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 2093 | /* 3763*/ OPC_MoveParent, |
| 2094 | /* 3764*/ OPC_MoveParent, |
| 2095 | /* 3765*/ OPC_Scope, 25, /*->3792*/ // 2 children in Scope |
| 2096 | /* 3767*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 2097 | /* 3769*/ OPC_EmitMergeInputChains1_0, |
| 2098 | /* 3770*/ OPC_EmitInteger, MVT::i32, 0, |
| 2099 | /* 3773*/ OPC_EmitInteger, MVT::i32, 0, |
| 2100 | /* 3776*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2101 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 2102 | /* 3783*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2103 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 2104 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2105 | // Dst: (ATOMIC_LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 2106 | /* 3792*/ /*Scope*/ 25, /*->3818*/ |
| 2107 | /* 3793*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 2108 | /* 3795*/ OPC_EmitMergeInputChains1_0, |
| 2109 | /* 3796*/ OPC_EmitInteger, MVT::i32, 0, |
| 2110 | /* 3799*/ OPC_EmitInteger, MVT::i64, 0, |
| 2111 | /* 3802*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2112 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 2113 | /* 3809*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2114 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 2115 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2116 | // Dst: (ATOMIC_LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 2117 | /* 3818*/ 0, /*End of Scope*/ |
| 2118 | /* 3819*/ /*Scope*/ 90, /*->3910*/ |
| 2119 | /* 3820*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 2120 | /* 3823*/ OPC_MoveChild0, |
| 2121 | /* 3824*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2122 | /* 3827*/ OPC_MoveChild0, |
| 2123 | /* 3828*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 2124 | /* 3831*/ OPC_RecordMemRef, |
| 2125 | /* 3832*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 2126 | /* 3833*/ OPC_CheckFoldableChainNode, |
| 2127 | /* 3834*/ OPC_RecordChild1, // #1 = $off |
| 2128 | /* 3835*/ OPC_MoveChild1, |
| 2129 | /* 3836*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2130 | /* 3839*/ OPC_MoveParent, |
| 2131 | /* 3840*/ OPC_MoveChild2, |
| 2132 | /* 3841*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 2133 | /* 3844*/ OPC_RecordChild0, // #2 = $val |
| 2134 | /* 3845*/ OPC_MoveParent, |
| 2135 | /* 3846*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 2136 | /* 3848*/ OPC_MoveParent, |
| 2137 | /* 3849*/ OPC_MoveParent, |
| 2138 | /* 3850*/ OPC_Scope, 28, /*->3880*/ // 2 children in Scope |
| 2139 | /* 3852*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2140 | /* 3854*/ OPC_EmitMergeInputChains1_0, |
| 2141 | /* 3855*/ OPC_EmitInteger, MVT::i32, 0, |
| 2142 | /* 3858*/ OPC_EmitConvertToTarget, 1, |
| 2143 | /* 3860*/ OPC_EmitInteger, MVT::i32, 0, |
| 2144 | /* 3863*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2145 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 2146 | /* 3870*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2147 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2148 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2149 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 2150 | /* 3880*/ /*Scope*/ 28, /*->3909*/ |
| 2151 | /* 3881*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2152 | /* 3883*/ OPC_EmitMergeInputChains1_0, |
| 2153 | /* 3884*/ OPC_EmitInteger, MVT::i32, 0, |
| 2154 | /* 3887*/ OPC_EmitConvertToTarget, 1, |
| 2155 | /* 3889*/ OPC_EmitInteger, MVT::i64, 0, |
| 2156 | /* 3892*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2157 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 2158 | /* 3899*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2159 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2160 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2161 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 2162 | /* 3909*/ 0, /*End of Scope*/ |
| 2163 | /* 3910*/ /*Scope*/ 91, /*->4002*/ |
| 2164 | /* 3911*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 2165 | /* 3915*/ OPC_MoveChild0, |
| 2166 | /* 3916*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2167 | /* 3919*/ OPC_MoveChild0, |
| 2168 | /* 3920*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 2169 | /* 3923*/ OPC_RecordMemRef, |
| 2170 | /* 3924*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 2171 | /* 3925*/ OPC_CheckFoldableChainNode, |
| 2172 | /* 3926*/ OPC_RecordChild1, // #1 = $off |
| 2173 | /* 3927*/ OPC_MoveChild1, |
| 2174 | /* 3928*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2175 | /* 3931*/ OPC_MoveParent, |
| 2176 | /* 3932*/ OPC_MoveChild2, |
| 2177 | /* 3933*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 2178 | /* 3936*/ OPC_RecordChild0, // #2 = $val |
| 2179 | /* 3937*/ OPC_MoveParent, |
| 2180 | /* 3938*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 2181 | /* 3940*/ OPC_MoveParent, |
| 2182 | /* 3941*/ OPC_MoveParent, |
| 2183 | /* 3942*/ OPC_Scope, 28, /*->3972*/ // 2 children in Scope |
| 2184 | /* 3944*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2185 | /* 3946*/ OPC_EmitMergeInputChains1_0, |
| 2186 | /* 3947*/ OPC_EmitInteger, MVT::i32, 0, |
| 2187 | /* 3950*/ OPC_EmitConvertToTarget, 1, |
| 2188 | /* 3952*/ OPC_EmitInteger, MVT::i32, 0, |
| 2189 | /* 3955*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2190 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 2191 | /* 3962*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2192 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2193 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2194 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 2195 | /* 3972*/ /*Scope*/ 28, /*->4001*/ |
| 2196 | /* 3973*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2197 | /* 3975*/ OPC_EmitMergeInputChains1_0, |
| 2198 | /* 3976*/ OPC_EmitInteger, MVT::i32, 0, |
| 2199 | /* 3979*/ OPC_EmitConvertToTarget, 1, |
| 2200 | /* 3981*/ OPC_EmitInteger, MVT::i64, 0, |
| 2201 | /* 3984*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2202 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 2203 | /* 3991*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2204 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2205 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2206 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 2207 | /* 4001*/ 0, /*End of Scope*/ |
| 2208 | /* 4002*/ /*Scope*/ 90, /*->4093*/ |
| 2209 | /* 4003*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 2210 | /* 4006*/ OPC_MoveChild0, |
| 2211 | /* 4007*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2212 | /* 4010*/ OPC_MoveChild0, |
| 2213 | /* 4011*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 2214 | /* 4014*/ OPC_RecordMemRef, |
| 2215 | /* 4015*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 2216 | /* 4016*/ OPC_CheckFoldableChainNode, |
| 2217 | /* 4017*/ OPC_RecordChild1, // #1 = $off |
| 2218 | /* 4018*/ OPC_MoveChild1, |
| 2219 | /* 4019*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2220 | /* 4022*/ OPC_MoveParent, |
| 2221 | /* 4023*/ OPC_MoveChild2, |
| 2222 | /* 4024*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 2223 | /* 4027*/ OPC_RecordChild0, // #2 = $val |
| 2224 | /* 4028*/ OPC_MoveParent, |
| 2225 | /* 4029*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 2226 | /* 4031*/ OPC_MoveParent, |
| 2227 | /* 4032*/ OPC_MoveParent, |
| 2228 | /* 4033*/ OPC_Scope, 28, /*->4063*/ // 2 children in Scope |
| 2229 | /* 4035*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2230 | /* 4037*/ OPC_EmitMergeInputChains1_0, |
| 2231 | /* 4038*/ OPC_EmitInteger, MVT::i32, 0, |
| 2232 | /* 4041*/ OPC_EmitConvertToTarget, 1, |
| 2233 | /* 4043*/ OPC_EmitInteger, MVT::i32, 0, |
| 2234 | /* 4046*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2235 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 2236 | /* 4053*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2237 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2238 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2239 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 2240 | /* 4063*/ /*Scope*/ 28, /*->4092*/ |
| 2241 | /* 4064*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2242 | /* 4066*/ OPC_EmitMergeInputChains1_0, |
| 2243 | /* 4067*/ OPC_EmitInteger, MVT::i32, 0, |
| 2244 | /* 4070*/ OPC_EmitConvertToTarget, 1, |
| 2245 | /* 4072*/ OPC_EmitInteger, MVT::i64, 0, |
| 2246 | /* 4075*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2247 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 2248 | /* 4082*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2249 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2250 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2251 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 2252 | /* 4092*/ 0, /*End of Scope*/ |
| 2253 | /* 4093*/ /*Scope*/ 91, /*->4185*/ |
| 2254 | /* 4094*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 2255 | /* 4098*/ OPC_MoveChild0, |
| 2256 | /* 4099*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2257 | /* 4102*/ OPC_MoveChild0, |
| 2258 | /* 4103*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 2259 | /* 4106*/ OPC_RecordMemRef, |
| 2260 | /* 4107*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 2261 | /* 4108*/ OPC_CheckFoldableChainNode, |
| 2262 | /* 4109*/ OPC_RecordChild1, // #1 = $off |
| 2263 | /* 4110*/ OPC_MoveChild1, |
| 2264 | /* 4111*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2265 | /* 4114*/ OPC_MoveParent, |
| 2266 | /* 4115*/ OPC_MoveChild2, |
| 2267 | /* 4116*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 2268 | /* 4119*/ OPC_RecordChild0, // #2 = $val |
| 2269 | /* 4120*/ OPC_MoveParent, |
| 2270 | /* 4121*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 2271 | /* 4123*/ OPC_MoveParent, |
| 2272 | /* 4124*/ OPC_MoveParent, |
| 2273 | /* 4125*/ OPC_Scope, 28, /*->4155*/ // 2 children in Scope |
| 2274 | /* 4127*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2275 | /* 4129*/ OPC_EmitMergeInputChains1_0, |
| 2276 | /* 4130*/ OPC_EmitInteger, MVT::i32, 0, |
| 2277 | /* 4133*/ OPC_EmitConvertToTarget, 1, |
| 2278 | /* 4135*/ OPC_EmitInteger, MVT::i32, 0, |
| 2279 | /* 4138*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2280 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 2281 | /* 4145*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2282 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2283 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2284 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 2285 | /* 4155*/ /*Scope*/ 28, /*->4184*/ |
| 2286 | /* 4156*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2287 | /* 4158*/ OPC_EmitMergeInputChains1_0, |
| 2288 | /* 4159*/ OPC_EmitInteger, MVT::i32, 0, |
| 2289 | /* 4162*/ OPC_EmitConvertToTarget, 1, |
| 2290 | /* 4164*/ OPC_EmitInteger, MVT::i64, 0, |
| 2291 | /* 4167*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2292 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 2293 | /* 4174*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2294 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2295 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2296 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 2297 | /* 4184*/ 0, /*End of Scope*/ |
| 2298 | /* 4185*/ /*Scope*/ 90, /*->4276*/ |
| 2299 | /* 4186*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 2300 | /* 4189*/ OPC_MoveChild0, |
| 2301 | /* 4190*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2302 | /* 4193*/ OPC_MoveChild0, |
| 2303 | /* 4194*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 2304 | /* 4197*/ OPC_RecordMemRef, |
| 2305 | /* 4198*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 2306 | /* 4199*/ OPC_CheckFoldableChainNode, |
| 2307 | /* 4200*/ OPC_RecordChild1, // #1 = $off |
| 2308 | /* 4201*/ OPC_MoveChild1, |
| 2309 | /* 4202*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2310 | /* 4205*/ OPC_MoveParent, |
| 2311 | /* 4206*/ OPC_MoveChild2, |
| 2312 | /* 4207*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 2313 | /* 4210*/ OPC_RecordChild0, // #2 = $val |
| 2314 | /* 4211*/ OPC_MoveParent, |
| 2315 | /* 4212*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 2316 | /* 4214*/ OPC_MoveParent, |
| 2317 | /* 4215*/ OPC_MoveParent, |
| 2318 | /* 4216*/ OPC_Scope, 28, /*->4246*/ // 2 children in Scope |
| 2319 | /* 4218*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2320 | /* 4220*/ OPC_EmitMergeInputChains1_0, |
| 2321 | /* 4221*/ OPC_EmitInteger, MVT::i32, 0, |
| 2322 | /* 4224*/ OPC_EmitConvertToTarget, 1, |
| 2323 | /* 4226*/ OPC_EmitInteger, MVT::i32, 0, |
| 2324 | /* 4229*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2325 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 2326 | /* 4236*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2327 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2328 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2329 | // Dst: (ATOMIC_RMW8_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 2330 | /* 4246*/ /*Scope*/ 28, /*->4275*/ |
| 2331 | /* 4247*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2332 | /* 4249*/ OPC_EmitMergeInputChains1_0, |
| 2333 | /* 4250*/ OPC_EmitInteger, MVT::i32, 0, |
| 2334 | /* 4253*/ OPC_EmitConvertToTarget, 1, |
| 2335 | /* 4255*/ OPC_EmitInteger, MVT::i64, 0, |
| 2336 | /* 4258*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2337 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 2338 | /* 4265*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2339 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2340 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2341 | // Dst: (ATOMIC_RMW8_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 2342 | /* 4275*/ 0, /*End of Scope*/ |
| 2343 | /* 4276*/ /*Scope*/ 91, /*->4368*/ |
| 2344 | /* 4277*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 2345 | /* 4281*/ OPC_MoveChild0, |
| 2346 | /* 4282*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2347 | /* 4285*/ OPC_MoveChild0, |
| 2348 | /* 4286*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 2349 | /* 4289*/ OPC_RecordMemRef, |
| 2350 | /* 4290*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 2351 | /* 4291*/ OPC_CheckFoldableChainNode, |
| 2352 | /* 4292*/ OPC_RecordChild1, // #1 = $off |
| 2353 | /* 4293*/ OPC_MoveChild1, |
| 2354 | /* 4294*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2355 | /* 4297*/ OPC_MoveParent, |
| 2356 | /* 4298*/ OPC_MoveChild2, |
| 2357 | /* 4299*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 2358 | /* 4302*/ OPC_RecordChild0, // #2 = $val |
| 2359 | /* 4303*/ OPC_MoveParent, |
| 2360 | /* 4304*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 2361 | /* 4306*/ OPC_MoveParent, |
| 2362 | /* 4307*/ OPC_MoveParent, |
| 2363 | /* 4308*/ OPC_Scope, 28, /*->4338*/ // 2 children in Scope |
| 2364 | /* 4310*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2365 | /* 4312*/ OPC_EmitMergeInputChains1_0, |
| 2366 | /* 4313*/ OPC_EmitInteger, MVT::i32, 0, |
| 2367 | /* 4316*/ OPC_EmitConvertToTarget, 1, |
| 2368 | /* 4318*/ OPC_EmitInteger, MVT::i32, 0, |
| 2369 | /* 4321*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2370 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 2371 | /* 4328*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2372 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2373 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2374 | // Dst: (ATOMIC_RMW16_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 2375 | /* 4338*/ /*Scope*/ 28, /*->4367*/ |
| 2376 | /* 4339*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2377 | /* 4341*/ OPC_EmitMergeInputChains1_0, |
| 2378 | /* 4342*/ OPC_EmitInteger, MVT::i32, 0, |
| 2379 | /* 4345*/ OPC_EmitConvertToTarget, 1, |
| 2380 | /* 4347*/ OPC_EmitInteger, MVT::i64, 0, |
| 2381 | /* 4350*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2382 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 2383 | /* 4357*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2384 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2385 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2386 | // Dst: (ATOMIC_RMW16_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 2387 | /* 4367*/ 0, /*End of Scope*/ |
| 2388 | /* 4368*/ /*Scope*/ 90, /*->4459*/ |
| 2389 | /* 4369*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 2390 | /* 4372*/ OPC_MoveChild0, |
| 2391 | /* 4373*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2392 | /* 4376*/ OPC_MoveChild0, |
| 2393 | /* 4377*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 2394 | /* 4380*/ OPC_RecordMemRef, |
| 2395 | /* 4381*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 2396 | /* 4382*/ OPC_CheckFoldableChainNode, |
| 2397 | /* 4383*/ OPC_RecordChild1, // #1 = $off |
| 2398 | /* 4384*/ OPC_MoveChild1, |
| 2399 | /* 4385*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2400 | /* 4388*/ OPC_MoveParent, |
| 2401 | /* 4389*/ OPC_MoveChild2, |
| 2402 | /* 4390*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 2403 | /* 4393*/ OPC_RecordChild0, // #2 = $val |
| 2404 | /* 4394*/ OPC_MoveParent, |
| 2405 | /* 4395*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 2406 | /* 4397*/ OPC_MoveParent, |
| 2407 | /* 4398*/ OPC_MoveParent, |
| 2408 | /* 4399*/ OPC_Scope, 28, /*->4429*/ // 2 children in Scope |
| 2409 | /* 4401*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2410 | /* 4403*/ OPC_EmitMergeInputChains1_0, |
| 2411 | /* 4404*/ OPC_EmitInteger, MVT::i32, 0, |
| 2412 | /* 4407*/ OPC_EmitConvertToTarget, 1, |
| 2413 | /* 4409*/ OPC_EmitInteger, MVT::i32, 0, |
| 2414 | /* 4412*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2415 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 2416 | /* 4419*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2417 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2418 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2419 | // Dst: (ATOMIC_RMW8_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 2420 | /* 4429*/ /*Scope*/ 28, /*->4458*/ |
| 2421 | /* 4430*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2422 | /* 4432*/ OPC_EmitMergeInputChains1_0, |
| 2423 | /* 4433*/ OPC_EmitInteger, MVT::i32, 0, |
| 2424 | /* 4436*/ OPC_EmitConvertToTarget, 1, |
| 2425 | /* 4438*/ OPC_EmitInteger, MVT::i64, 0, |
| 2426 | /* 4441*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2427 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 2428 | /* 4448*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2429 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2430 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2431 | // Dst: (ATOMIC_RMW8_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 2432 | /* 4458*/ 0, /*End of Scope*/ |
| 2433 | /* 4459*/ /*Scope*/ 91, /*->4551*/ |
| 2434 | /* 4460*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 2435 | /* 4464*/ OPC_MoveChild0, |
| 2436 | /* 4465*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2437 | /* 4468*/ OPC_MoveChild0, |
| 2438 | /* 4469*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 2439 | /* 4472*/ OPC_RecordMemRef, |
| 2440 | /* 4473*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 2441 | /* 4474*/ OPC_CheckFoldableChainNode, |
| 2442 | /* 4475*/ OPC_RecordChild1, // #1 = $off |
| 2443 | /* 4476*/ OPC_MoveChild1, |
| 2444 | /* 4477*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2445 | /* 4480*/ OPC_MoveParent, |
| 2446 | /* 4481*/ OPC_MoveChild2, |
| 2447 | /* 4482*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 2448 | /* 4485*/ OPC_RecordChild0, // #2 = $val |
| 2449 | /* 4486*/ OPC_MoveParent, |
| 2450 | /* 4487*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 2451 | /* 4489*/ OPC_MoveParent, |
| 2452 | /* 4490*/ OPC_MoveParent, |
| 2453 | /* 4491*/ OPC_Scope, 28, /*->4521*/ // 2 children in Scope |
| 2454 | /* 4493*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2455 | /* 4495*/ OPC_EmitMergeInputChains1_0, |
| 2456 | /* 4496*/ OPC_EmitInteger, MVT::i32, 0, |
| 2457 | /* 4499*/ OPC_EmitConvertToTarget, 1, |
| 2458 | /* 4501*/ OPC_EmitInteger, MVT::i32, 0, |
| 2459 | /* 4504*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2460 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 2461 | /* 4511*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2462 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2463 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2464 | // Dst: (ATOMIC_RMW16_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 2465 | /* 4521*/ /*Scope*/ 28, /*->4550*/ |
| 2466 | /* 4522*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2467 | /* 4524*/ OPC_EmitMergeInputChains1_0, |
| 2468 | /* 4525*/ OPC_EmitInteger, MVT::i32, 0, |
| 2469 | /* 4528*/ OPC_EmitConvertToTarget, 1, |
| 2470 | /* 4530*/ OPC_EmitInteger, MVT::i64, 0, |
| 2471 | /* 4533*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2472 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 2473 | /* 4540*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2474 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2475 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2476 | // Dst: (ATOMIC_RMW16_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 2477 | /* 4550*/ 0, /*End of Scope*/ |
| 2478 | /* 4551*/ /*Scope*/ 90, /*->4642*/ |
| 2479 | /* 4552*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 2480 | /* 4555*/ OPC_MoveChild0, |
| 2481 | /* 4556*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2482 | /* 4559*/ OPC_MoveChild0, |
| 2483 | /* 4560*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 2484 | /* 4563*/ OPC_RecordMemRef, |
| 2485 | /* 4564*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 2486 | /* 4565*/ OPC_CheckFoldableChainNode, |
| 2487 | /* 4566*/ OPC_RecordChild1, // #1 = $off |
| 2488 | /* 4567*/ OPC_MoveChild1, |
| 2489 | /* 4568*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2490 | /* 4571*/ OPC_MoveParent, |
| 2491 | /* 4572*/ OPC_MoveChild2, |
| 2492 | /* 4573*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 2493 | /* 4576*/ OPC_RecordChild0, // #2 = $val |
| 2494 | /* 4577*/ OPC_MoveParent, |
| 2495 | /* 4578*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 2496 | /* 4580*/ OPC_MoveParent, |
| 2497 | /* 4581*/ OPC_MoveParent, |
| 2498 | /* 4582*/ OPC_Scope, 28, /*->4612*/ // 2 children in Scope |
| 2499 | /* 4584*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2500 | /* 4586*/ OPC_EmitMergeInputChains1_0, |
| 2501 | /* 4587*/ OPC_EmitInteger, MVT::i32, 0, |
| 2502 | /* 4590*/ OPC_EmitConvertToTarget, 1, |
| 2503 | /* 4592*/ OPC_EmitInteger, MVT::i32, 0, |
| 2504 | /* 4595*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2505 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 2506 | /* 4602*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2507 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2508 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2509 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 2510 | /* 4612*/ /*Scope*/ 28, /*->4641*/ |
| 2511 | /* 4613*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2512 | /* 4615*/ OPC_EmitMergeInputChains1_0, |
| 2513 | /* 4616*/ OPC_EmitInteger, MVT::i32, 0, |
| 2514 | /* 4619*/ OPC_EmitConvertToTarget, 1, |
| 2515 | /* 4621*/ OPC_EmitInteger, MVT::i64, 0, |
| 2516 | /* 4624*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2517 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 2518 | /* 4631*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2519 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2520 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2521 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 2522 | /* 4641*/ 0, /*End of Scope*/ |
| 2523 | /* 4642*/ /*Scope*/ 91, /*->4734*/ |
| 2524 | /* 4643*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 2525 | /* 4647*/ OPC_MoveChild0, |
| 2526 | /* 4648*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2527 | /* 4651*/ OPC_MoveChild0, |
| 2528 | /* 4652*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 2529 | /* 4655*/ OPC_RecordMemRef, |
| 2530 | /* 4656*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 2531 | /* 4657*/ OPC_CheckFoldableChainNode, |
| 2532 | /* 4658*/ OPC_RecordChild1, // #1 = $off |
| 2533 | /* 4659*/ OPC_MoveChild1, |
| 2534 | /* 4660*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2535 | /* 4663*/ OPC_MoveParent, |
| 2536 | /* 4664*/ OPC_MoveChild2, |
| 2537 | /* 4665*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 2538 | /* 4668*/ OPC_RecordChild0, // #2 = $val |
| 2539 | /* 4669*/ OPC_MoveParent, |
| 2540 | /* 4670*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 2541 | /* 4672*/ OPC_MoveParent, |
| 2542 | /* 4673*/ OPC_MoveParent, |
| 2543 | /* 4674*/ OPC_Scope, 28, /*->4704*/ // 2 children in Scope |
| 2544 | /* 4676*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2545 | /* 4678*/ OPC_EmitMergeInputChains1_0, |
| 2546 | /* 4679*/ OPC_EmitInteger, MVT::i32, 0, |
| 2547 | /* 4682*/ OPC_EmitConvertToTarget, 1, |
| 2548 | /* 4684*/ OPC_EmitInteger, MVT::i32, 0, |
| 2549 | /* 4687*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2550 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 2551 | /* 4694*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2552 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2553 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2554 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 2555 | /* 4704*/ /*Scope*/ 28, /*->4733*/ |
| 2556 | /* 4705*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2557 | /* 4707*/ OPC_EmitMergeInputChains1_0, |
| 2558 | /* 4708*/ OPC_EmitInteger, MVT::i32, 0, |
| 2559 | /* 4711*/ OPC_EmitConvertToTarget, 1, |
| 2560 | /* 4713*/ OPC_EmitInteger, MVT::i64, 0, |
| 2561 | /* 4716*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2562 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 2563 | /* 4723*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2564 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2565 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2566 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 2567 | /* 4733*/ 0, /*End of Scope*/ |
| 2568 | /* 4734*/ /*Scope*/ 90, /*->4825*/ |
| 2569 | /* 4735*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 2570 | /* 4738*/ OPC_MoveChild0, |
| 2571 | /* 4739*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2572 | /* 4742*/ OPC_MoveChild0, |
| 2573 | /* 4743*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 2574 | /* 4746*/ OPC_RecordMemRef, |
| 2575 | /* 4747*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 2576 | /* 4748*/ OPC_CheckFoldableChainNode, |
| 2577 | /* 4749*/ OPC_RecordChild1, // #1 = $off |
| 2578 | /* 4750*/ OPC_MoveChild1, |
| 2579 | /* 4751*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2580 | /* 4754*/ OPC_MoveParent, |
| 2581 | /* 4755*/ OPC_MoveChild2, |
| 2582 | /* 4756*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 2583 | /* 4759*/ OPC_RecordChild0, // #2 = $val |
| 2584 | /* 4760*/ OPC_MoveParent, |
| 2585 | /* 4761*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 2586 | /* 4763*/ OPC_MoveParent, |
| 2587 | /* 4764*/ OPC_MoveParent, |
| 2588 | /* 4765*/ OPC_Scope, 28, /*->4795*/ // 2 children in Scope |
| 2589 | /* 4767*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2590 | /* 4769*/ OPC_EmitMergeInputChains1_0, |
| 2591 | /* 4770*/ OPC_EmitInteger, MVT::i32, 0, |
| 2592 | /* 4773*/ OPC_EmitConvertToTarget, 1, |
| 2593 | /* 4775*/ OPC_EmitInteger, MVT::i32, 0, |
| 2594 | /* 4778*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2595 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 2596 | /* 4785*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2597 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2598 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2599 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 2600 | /* 4795*/ /*Scope*/ 28, /*->4824*/ |
| 2601 | /* 4796*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2602 | /* 4798*/ OPC_EmitMergeInputChains1_0, |
| 2603 | /* 4799*/ OPC_EmitInteger, MVT::i32, 0, |
| 2604 | /* 4802*/ OPC_EmitConvertToTarget, 1, |
| 2605 | /* 4804*/ OPC_EmitInteger, MVT::i64, 0, |
| 2606 | /* 4807*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2607 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 2608 | /* 4814*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2609 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2610 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>), 255:{ *:[i64] }) - Complexity = 21 |
| 2611 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 2612 | /* 4824*/ 0, /*End of Scope*/ |
| 2613 | /* 4825*/ /*Scope*/ 91, /*->4917*/ |
| 2614 | /* 4826*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 2615 | /* 4830*/ OPC_MoveChild0, |
| 2616 | /* 4831*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 2617 | /* 4834*/ OPC_MoveChild0, |
| 2618 | /* 4835*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 2619 | /* 4838*/ OPC_RecordMemRef, |
| 2620 | /* 4839*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 2621 | /* 4840*/ OPC_CheckFoldableChainNode, |
| 2622 | /* 4841*/ OPC_RecordChild1, // #1 = $off |
| 2623 | /* 4842*/ OPC_MoveChild1, |
| 2624 | /* 4843*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2625 | /* 4846*/ OPC_MoveParent, |
| 2626 | /* 4847*/ OPC_MoveChild2, |
| 2627 | /* 4848*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 2628 | /* 4851*/ OPC_RecordChild0, // #2 = $val |
| 2629 | /* 4852*/ OPC_MoveParent, |
| 2630 | /* 4853*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 2631 | /* 4855*/ OPC_MoveParent, |
| 2632 | /* 4856*/ OPC_MoveParent, |
| 2633 | /* 4857*/ OPC_Scope, 28, /*->4887*/ // 2 children in Scope |
| 2634 | /* 4859*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2635 | /* 4861*/ OPC_EmitMergeInputChains1_0, |
| 2636 | /* 4862*/ OPC_EmitInteger, MVT::i32, 0, |
| 2637 | /* 4865*/ OPC_EmitConvertToTarget, 1, |
| 2638 | /* 4867*/ OPC_EmitInteger, MVT::i32, 0, |
| 2639 | /* 4870*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 2640 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 2641 | /* 4877*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2642 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2643 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2644 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 2645 | /* 4887*/ /*Scope*/ 28, /*->4916*/ |
| 2646 | /* 4888*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2647 | /* 4890*/ OPC_EmitMergeInputChains1_0, |
| 2648 | /* 4891*/ OPC_EmitInteger, MVT::i32, 0, |
| 2649 | /* 4894*/ OPC_EmitConvertToTarget, 1, |
| 2650 | /* 4896*/ OPC_EmitInteger, MVT::i64, 0, |
| 2651 | /* 4899*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 2652 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 2653 | /* 4906*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2654 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 2655 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>), 65535:{ *:[i64] }) - Complexity = 21 |
| 2656 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 2657 | /* 4916*/ 0, /*End of Scope*/ |
| 2658 | /* 4917*/ /*Scope*/ 75, /*->4993*/ |
| 2659 | /* 4918*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 2660 | /* 4921*/ OPC_MoveChild0, |
| 2661 | /* 4922*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 2662 | /* 4925*/ OPC_RecordMemRef, |
| 2663 | /* 4926*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 2664 | /* 4927*/ OPC_CheckFoldableChainNode, |
| 2665 | /* 4928*/ OPC_MoveChild1, |
| 2666 | /* 4929*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 2667 | /* 4932*/ OPC_RecordChild0, // #1 = $addr |
| 2668 | /* 4933*/ OPC_RecordChild1, // #2 = $off |
| 2669 | /* 4934*/ OPC_MoveChild1, |
| 2670 | /* 4935*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2671 | /* 4938*/ OPC_MoveParent, |
| 2672 | /* 4939*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 2673 | /* 4941*/ OPC_SwitchType /*2 cases */, 23, MVT::i32,// ->4967 |
| 2674 | /* 4944*/ OPC_MoveParent, |
| 2675 | /* 4945*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 2676 | /* 4947*/ OPC_MoveParent, |
| 2677 | /* 4948*/ OPC_CheckType, MVT::i32, |
| 2678 | /* 4950*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 2679 | /* 4952*/ OPC_EmitMergeInputChains1_0, |
| 2680 | /* 4953*/ OPC_EmitInteger, MVT::i32, 0, |
| 2681 | /* 4956*/ OPC_EmitConvertToTarget, 2, |
| 2682 | /* 4958*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2683 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 2684 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 2685 | // Dst: (ATOMIC_LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 2686 | /* 4967*/ /*SwitchType*/ 23, MVT::i64,// ->4992 |
| 2687 | /* 4969*/ OPC_MoveParent, |
| 2688 | /* 4970*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 2689 | /* 4972*/ OPC_MoveParent, |
| 2690 | /* 4973*/ OPC_CheckType, MVT::i32, |
| 2691 | /* 4975*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 2692 | /* 4977*/ OPC_EmitMergeInputChains1_0, |
| 2693 | /* 4978*/ OPC_EmitInteger, MVT::i32, 0, |
| 2694 | /* 4981*/ OPC_EmitConvertToTarget, 2, |
| 2695 | /* 4983*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2696 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 2697 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 2698 | // Dst: (ATOMIC_LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 2699 | /* 4992*/ 0, // EndSwitchType |
| 2700 | /* 4993*/ /*Scope*/ 76, /*->5070*/ |
| 2701 | /* 4994*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 2702 | /* 4998*/ OPC_MoveChild0, |
| 2703 | /* 4999*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 2704 | /* 5002*/ OPC_RecordMemRef, |
| 2705 | /* 5003*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 2706 | /* 5004*/ OPC_CheckFoldableChainNode, |
| 2707 | /* 5005*/ OPC_MoveChild1, |
| 2708 | /* 5006*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 2709 | /* 5009*/ OPC_RecordChild0, // #1 = $addr |
| 2710 | /* 5010*/ OPC_RecordChild1, // #2 = $off |
| 2711 | /* 5011*/ OPC_MoveChild1, |
| 2712 | /* 5012*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2713 | /* 5015*/ OPC_MoveParent, |
| 2714 | /* 5016*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 2715 | /* 5018*/ OPC_SwitchType /*2 cases */, 23, MVT::i32,// ->5044 |
| 2716 | /* 5021*/ OPC_MoveParent, |
| 2717 | /* 5022*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 2718 | /* 5024*/ OPC_MoveParent, |
| 2719 | /* 5025*/ OPC_CheckType, MVT::i32, |
| 2720 | /* 5027*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 2721 | /* 5029*/ OPC_EmitMergeInputChains1_0, |
| 2722 | /* 5030*/ OPC_EmitInteger, MVT::i32, 0, |
| 2723 | /* 5033*/ OPC_EmitConvertToTarget, 2, |
| 2724 | /* 5035*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2725 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 2726 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 2727 | // Dst: (ATOMIC_LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 2728 | /* 5044*/ /*SwitchType*/ 23, MVT::i64,// ->5069 |
| 2729 | /* 5046*/ OPC_MoveParent, |
| 2730 | /* 5047*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 2731 | /* 5049*/ OPC_MoveParent, |
| 2732 | /* 5050*/ OPC_CheckType, MVT::i32, |
| 2733 | /* 5052*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 2734 | /* 5054*/ OPC_EmitMergeInputChains1_0, |
| 2735 | /* 5055*/ OPC_EmitInteger, MVT::i32, 0, |
| 2736 | /* 5058*/ OPC_EmitConvertToTarget, 2, |
| 2737 | /* 5060*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2738 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 2739 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 2740 | // Dst: (ATOMIC_LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 2741 | /* 5069*/ 0, // EndSwitchType |
| 2742 | /* 5070*/ /*Scope*/ 75, /*->5146*/ |
| 2743 | /* 5071*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 2744 | /* 5074*/ OPC_MoveChild0, |
| 2745 | /* 5075*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 2746 | /* 5078*/ OPC_RecordMemRef, |
| 2747 | /* 5079*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 2748 | /* 5080*/ OPC_CheckFoldableChainNode, |
| 2749 | /* 5081*/ OPC_MoveChild1, |
| 2750 | /* 5082*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 2751 | /* 5085*/ OPC_RecordChild0, // #1 = $addr |
| 2752 | /* 5086*/ OPC_RecordChild1, // #2 = $off |
| 2753 | /* 5087*/ OPC_MoveChild1, |
| 2754 | /* 5088*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2755 | /* 5091*/ OPC_MoveParent, |
| 2756 | /* 5092*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 2757 | /* 5094*/ OPC_SwitchType /*2 cases */, 23, MVT::i32,// ->5120 |
| 2758 | /* 5097*/ OPC_MoveParent, |
| 2759 | /* 5098*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 2760 | /* 5100*/ OPC_MoveParent, |
| 2761 | /* 5101*/ OPC_CheckType, MVT::i32, |
| 2762 | /* 5103*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 2763 | /* 5105*/ OPC_EmitMergeInputChains1_0, |
| 2764 | /* 5106*/ OPC_EmitInteger, MVT::i32, 0, |
| 2765 | /* 5109*/ OPC_EmitConvertToTarget, 2, |
| 2766 | /* 5111*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2767 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 2768 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 2769 | // Dst: (ATOMIC_LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 2770 | /* 5120*/ /*SwitchType*/ 23, MVT::i64,// ->5145 |
| 2771 | /* 5122*/ OPC_MoveParent, |
| 2772 | /* 5123*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 2773 | /* 5125*/ OPC_MoveParent, |
| 2774 | /* 5126*/ OPC_CheckType, MVT::i32, |
| 2775 | /* 5128*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 2776 | /* 5130*/ OPC_EmitMergeInputChains1_0, |
| 2777 | /* 5131*/ OPC_EmitInteger, MVT::i32, 0, |
| 2778 | /* 5134*/ OPC_EmitConvertToTarget, 2, |
| 2779 | /* 5136*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2780 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 2781 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 2782 | // Dst: (ATOMIC_LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 2783 | /* 5145*/ 0, // EndSwitchType |
| 2784 | /* 5146*/ /*Scope*/ 76, /*->5223*/ |
| 2785 | /* 5147*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 2786 | /* 5151*/ OPC_MoveChild0, |
| 2787 | /* 5152*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 2788 | /* 5155*/ OPC_RecordMemRef, |
| 2789 | /* 5156*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 2790 | /* 5157*/ OPC_CheckFoldableChainNode, |
| 2791 | /* 5158*/ OPC_MoveChild1, |
| 2792 | /* 5159*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 2793 | /* 5162*/ OPC_RecordChild0, // #1 = $addr |
| 2794 | /* 5163*/ OPC_RecordChild1, // #2 = $off |
| 2795 | /* 5164*/ OPC_MoveChild1, |
| 2796 | /* 5165*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2797 | /* 5168*/ OPC_MoveParent, |
| 2798 | /* 5169*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 2799 | /* 5171*/ OPC_SwitchType /*2 cases */, 23, MVT::i32,// ->5197 |
| 2800 | /* 5174*/ OPC_MoveParent, |
| 2801 | /* 5175*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 2802 | /* 5177*/ OPC_MoveParent, |
| 2803 | /* 5178*/ OPC_CheckType, MVT::i32, |
| 2804 | /* 5180*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 2805 | /* 5182*/ OPC_EmitMergeInputChains1_0, |
| 2806 | /* 5183*/ OPC_EmitInteger, MVT::i32, 0, |
| 2807 | /* 5186*/ OPC_EmitConvertToTarget, 2, |
| 2808 | /* 5188*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2809 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 2810 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 2811 | // Dst: (ATOMIC_LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 2812 | /* 5197*/ /*SwitchType*/ 23, MVT::i64,// ->5222 |
| 2813 | /* 5199*/ OPC_MoveParent, |
| 2814 | /* 5200*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 2815 | /* 5202*/ OPC_MoveParent, |
| 2816 | /* 5203*/ OPC_CheckType, MVT::i32, |
| 2817 | /* 5205*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 2818 | /* 5207*/ OPC_EmitMergeInputChains1_0, |
| 2819 | /* 5208*/ OPC_EmitInteger, MVT::i32, 0, |
| 2820 | /* 5211*/ OPC_EmitConvertToTarget, 2, |
| 2821 | /* 5213*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2822 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 2823 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 2824 | // Dst: (ATOMIC_LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 2825 | /* 5222*/ 0, // EndSwitchType |
| 2826 | /* 5223*/ /*Scope*/ 79, /*->5303*/ |
| 2827 | /* 5224*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 2828 | /* 5227*/ OPC_MoveChild0, |
| 2829 | /* 5228*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 2830 | /* 5231*/ OPC_RecordMemRef, |
| 2831 | /* 5232*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 2832 | /* 5233*/ OPC_CheckFoldableChainNode, |
| 2833 | /* 5234*/ OPC_MoveChild1, |
| 2834 | /* 5235*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 2835 | /* 5238*/ OPC_RecordChild0, // #1 = $addr |
| 2836 | /* 5239*/ OPC_RecordChild1, // #2 = $off |
| 2837 | /* 5240*/ OPC_MoveChild1, |
| 2838 | /* 5241*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2839 | /* 5244*/ OPC_MoveParent, |
| 2840 | /* 5245*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 2841 | /* 5247*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->5275 |
| 2842 | /* 5250*/ OPC_MoveParent, |
| 2843 | /* 5251*/ OPC_RecordChild2, // #3 = $val |
| 2844 | /* 5252*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 2845 | /* 5254*/ OPC_MoveParent, |
| 2846 | /* 5255*/ OPC_CheckType, MVT::i32, |
| 2847 | /* 5257*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2848 | /* 5259*/ OPC_EmitMergeInputChains1_0, |
| 2849 | /* 5260*/ OPC_EmitInteger, MVT::i32, 0, |
| 2850 | /* 5263*/ OPC_EmitConvertToTarget, 2, |
| 2851 | /* 5265*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2852 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 2853 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 2854 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 2855 | /* 5275*/ /*SwitchType*/ 25, MVT::i64,// ->5302 |
| 2856 | /* 5277*/ OPC_MoveParent, |
| 2857 | /* 5278*/ OPC_RecordChild2, // #3 = $val |
| 2858 | /* 5279*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 2859 | /* 5281*/ OPC_MoveParent, |
| 2860 | /* 5282*/ OPC_CheckType, MVT::i32, |
| 2861 | /* 5284*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2862 | /* 5286*/ OPC_EmitMergeInputChains1_0, |
| 2863 | /* 5287*/ OPC_EmitInteger, MVT::i32, 0, |
| 2864 | /* 5290*/ OPC_EmitConvertToTarget, 2, |
| 2865 | /* 5292*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2866 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 2867 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 2868 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 2869 | /* 5302*/ 0, // EndSwitchType |
| 2870 | /* 5303*/ /*Scope*/ 80, /*->5384*/ |
| 2871 | /* 5304*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 2872 | /* 5308*/ OPC_MoveChild0, |
| 2873 | /* 5309*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 2874 | /* 5312*/ OPC_RecordMemRef, |
| 2875 | /* 5313*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 2876 | /* 5314*/ OPC_CheckFoldableChainNode, |
| 2877 | /* 5315*/ OPC_MoveChild1, |
| 2878 | /* 5316*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 2879 | /* 5319*/ OPC_RecordChild0, // #1 = $addr |
| 2880 | /* 5320*/ OPC_RecordChild1, // #2 = $off |
| 2881 | /* 5321*/ OPC_MoveChild1, |
| 2882 | /* 5322*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2883 | /* 5325*/ OPC_MoveParent, |
| 2884 | /* 5326*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 2885 | /* 5328*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->5356 |
| 2886 | /* 5331*/ OPC_MoveParent, |
| 2887 | /* 5332*/ OPC_RecordChild2, // #3 = $val |
| 2888 | /* 5333*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 2889 | /* 5335*/ OPC_MoveParent, |
| 2890 | /* 5336*/ OPC_CheckType, MVT::i32, |
| 2891 | /* 5338*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2892 | /* 5340*/ OPC_EmitMergeInputChains1_0, |
| 2893 | /* 5341*/ OPC_EmitInteger, MVT::i32, 0, |
| 2894 | /* 5344*/ OPC_EmitConvertToTarget, 2, |
| 2895 | /* 5346*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2896 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 2897 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 2898 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 2899 | /* 5356*/ /*SwitchType*/ 25, MVT::i64,// ->5383 |
| 2900 | /* 5358*/ OPC_MoveParent, |
| 2901 | /* 5359*/ OPC_RecordChild2, // #3 = $val |
| 2902 | /* 5360*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 2903 | /* 5362*/ OPC_MoveParent, |
| 2904 | /* 5363*/ OPC_CheckType, MVT::i32, |
| 2905 | /* 5365*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2906 | /* 5367*/ OPC_EmitMergeInputChains1_0, |
| 2907 | /* 5368*/ OPC_EmitInteger, MVT::i32, 0, |
| 2908 | /* 5371*/ OPC_EmitConvertToTarget, 2, |
| 2909 | /* 5373*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2910 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 2911 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 2912 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 2913 | /* 5383*/ 0, // EndSwitchType |
| 2914 | /* 5384*/ /*Scope*/ 79, /*->5464*/ |
| 2915 | /* 5385*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 2916 | /* 5388*/ OPC_MoveChild0, |
| 2917 | /* 5389*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 2918 | /* 5392*/ OPC_RecordMemRef, |
| 2919 | /* 5393*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 2920 | /* 5394*/ OPC_CheckFoldableChainNode, |
| 2921 | /* 5395*/ OPC_MoveChild1, |
| 2922 | /* 5396*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 2923 | /* 5399*/ OPC_RecordChild0, // #1 = $addr |
| 2924 | /* 5400*/ OPC_RecordChild1, // #2 = $off |
| 2925 | /* 5401*/ OPC_MoveChild1, |
| 2926 | /* 5402*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2927 | /* 5405*/ OPC_MoveParent, |
| 2928 | /* 5406*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 2929 | /* 5408*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->5436 |
| 2930 | /* 5411*/ OPC_MoveParent, |
| 2931 | /* 5412*/ OPC_RecordChild2, // #3 = $val |
| 2932 | /* 5413*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 2933 | /* 5415*/ OPC_MoveParent, |
| 2934 | /* 5416*/ OPC_CheckType, MVT::i32, |
| 2935 | /* 5418*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2936 | /* 5420*/ OPC_EmitMergeInputChains1_0, |
| 2937 | /* 5421*/ OPC_EmitInteger, MVT::i32, 0, |
| 2938 | /* 5424*/ OPC_EmitConvertToTarget, 2, |
| 2939 | /* 5426*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2940 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 2941 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 2942 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 2943 | /* 5436*/ /*SwitchType*/ 25, MVT::i64,// ->5463 |
| 2944 | /* 5438*/ OPC_MoveParent, |
| 2945 | /* 5439*/ OPC_RecordChild2, // #3 = $val |
| 2946 | /* 5440*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 2947 | /* 5442*/ OPC_MoveParent, |
| 2948 | /* 5443*/ OPC_CheckType, MVT::i32, |
| 2949 | /* 5445*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2950 | /* 5447*/ OPC_EmitMergeInputChains1_0, |
| 2951 | /* 5448*/ OPC_EmitInteger, MVT::i32, 0, |
| 2952 | /* 5451*/ OPC_EmitConvertToTarget, 2, |
| 2953 | /* 5453*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2954 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 2955 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 2956 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 2957 | /* 5463*/ 0, // EndSwitchType |
| 2958 | /* 5464*/ /*Scope*/ 80, /*->5545*/ |
| 2959 | /* 5465*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 2960 | /* 5469*/ OPC_MoveChild0, |
| 2961 | /* 5470*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 2962 | /* 5473*/ OPC_RecordMemRef, |
| 2963 | /* 5474*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 2964 | /* 5475*/ OPC_CheckFoldableChainNode, |
| 2965 | /* 5476*/ OPC_MoveChild1, |
| 2966 | /* 5477*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 2967 | /* 5480*/ OPC_RecordChild0, // #1 = $addr |
| 2968 | /* 5481*/ OPC_RecordChild1, // #2 = $off |
| 2969 | /* 5482*/ OPC_MoveChild1, |
| 2970 | /* 5483*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 2971 | /* 5486*/ OPC_MoveParent, |
| 2972 | /* 5487*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 2973 | /* 5489*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->5517 |
| 2974 | /* 5492*/ OPC_MoveParent, |
| 2975 | /* 5493*/ OPC_RecordChild2, // #3 = $val |
| 2976 | /* 5494*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 2977 | /* 5496*/ OPC_MoveParent, |
| 2978 | /* 5497*/ OPC_CheckType, MVT::i32, |
| 2979 | /* 5499*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2980 | /* 5501*/ OPC_EmitMergeInputChains1_0, |
| 2981 | /* 5502*/ OPC_EmitInteger, MVT::i32, 0, |
| 2982 | /* 5505*/ OPC_EmitConvertToTarget, 2, |
| 2983 | /* 5507*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 2984 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 2985 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 2986 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 2987 | /* 5517*/ /*SwitchType*/ 25, MVT::i64,// ->5544 |
| 2988 | /* 5519*/ OPC_MoveParent, |
| 2989 | /* 5520*/ OPC_RecordChild2, // #3 = $val |
| 2990 | /* 5521*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 2991 | /* 5523*/ OPC_MoveParent, |
| 2992 | /* 5524*/ OPC_CheckType, MVT::i32, |
| 2993 | /* 5526*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 2994 | /* 5528*/ OPC_EmitMergeInputChains1_0, |
| 2995 | /* 5529*/ OPC_EmitInteger, MVT::i32, 0, |
| 2996 | /* 5532*/ OPC_EmitConvertToTarget, 2, |
| 2997 | /* 5534*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 2998 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 2999 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3000 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3001 | /* 5544*/ 0, // EndSwitchType |
| 3002 | /* 5545*/ /*Scope*/ 79, /*->5625*/ |
| 3003 | /* 5546*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 3004 | /* 5549*/ OPC_MoveChild0, |
| 3005 | /* 5550*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 3006 | /* 5553*/ OPC_RecordMemRef, |
| 3007 | /* 5554*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 3008 | /* 5555*/ OPC_CheckFoldableChainNode, |
| 3009 | /* 5556*/ OPC_MoveChild1, |
| 3010 | /* 5557*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 3011 | /* 5560*/ OPC_RecordChild0, // #1 = $addr |
| 3012 | /* 5561*/ OPC_RecordChild1, // #2 = $off |
| 3013 | /* 5562*/ OPC_MoveChild1, |
| 3014 | /* 5563*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3015 | /* 5566*/ OPC_MoveParent, |
| 3016 | /* 5567*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 3017 | /* 5569*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->5597 |
| 3018 | /* 5572*/ OPC_MoveParent, |
| 3019 | /* 5573*/ OPC_RecordChild2, // #3 = $val |
| 3020 | /* 5574*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 3021 | /* 5576*/ OPC_MoveParent, |
| 3022 | /* 5577*/ OPC_CheckType, MVT::i32, |
| 3023 | /* 5579*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3024 | /* 5581*/ OPC_EmitMergeInputChains1_0, |
| 3025 | /* 5582*/ OPC_EmitInteger, MVT::i32, 0, |
| 3026 | /* 5585*/ OPC_EmitConvertToTarget, 2, |
| 3027 | /* 5587*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3028 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3029 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3030 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3031 | /* 5597*/ /*SwitchType*/ 25, MVT::i64,// ->5624 |
| 3032 | /* 5599*/ OPC_MoveParent, |
| 3033 | /* 5600*/ OPC_RecordChild2, // #3 = $val |
| 3034 | /* 5601*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 3035 | /* 5603*/ OPC_MoveParent, |
| 3036 | /* 5604*/ OPC_CheckType, MVT::i32, |
| 3037 | /* 5606*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3038 | /* 5608*/ OPC_EmitMergeInputChains1_0, |
| 3039 | /* 5609*/ OPC_EmitInteger, MVT::i32, 0, |
| 3040 | /* 5612*/ OPC_EmitConvertToTarget, 2, |
| 3041 | /* 5614*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3042 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3043 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3044 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3045 | /* 5624*/ 0, // EndSwitchType |
| 3046 | /* 5625*/ /*Scope*/ 80, /*->5706*/ |
| 3047 | /* 5626*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 3048 | /* 5630*/ OPC_MoveChild0, |
| 3049 | /* 5631*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 3050 | /* 5634*/ OPC_RecordMemRef, |
| 3051 | /* 5635*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 3052 | /* 5636*/ OPC_CheckFoldableChainNode, |
| 3053 | /* 5637*/ OPC_MoveChild1, |
| 3054 | /* 5638*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 3055 | /* 5641*/ OPC_RecordChild0, // #1 = $addr |
| 3056 | /* 5642*/ OPC_RecordChild1, // #2 = $off |
| 3057 | /* 5643*/ OPC_MoveChild1, |
| 3058 | /* 5644*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3059 | /* 5647*/ OPC_MoveParent, |
| 3060 | /* 5648*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 3061 | /* 5650*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->5678 |
| 3062 | /* 5653*/ OPC_MoveParent, |
| 3063 | /* 5654*/ OPC_RecordChild2, // #3 = $val |
| 3064 | /* 5655*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 3065 | /* 5657*/ OPC_MoveParent, |
| 3066 | /* 5658*/ OPC_CheckType, MVT::i32, |
| 3067 | /* 5660*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3068 | /* 5662*/ OPC_EmitMergeInputChains1_0, |
| 3069 | /* 5663*/ OPC_EmitInteger, MVT::i32, 0, |
| 3070 | /* 5666*/ OPC_EmitConvertToTarget, 2, |
| 3071 | /* 5668*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3072 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3073 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3074 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3075 | /* 5678*/ /*SwitchType*/ 25, MVT::i64,// ->5705 |
| 3076 | /* 5680*/ OPC_MoveParent, |
| 3077 | /* 5681*/ OPC_RecordChild2, // #3 = $val |
| 3078 | /* 5682*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 3079 | /* 5684*/ OPC_MoveParent, |
| 3080 | /* 5685*/ OPC_CheckType, MVT::i32, |
| 3081 | /* 5687*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3082 | /* 5689*/ OPC_EmitMergeInputChains1_0, |
| 3083 | /* 5690*/ OPC_EmitInteger, MVT::i32, 0, |
| 3084 | /* 5693*/ OPC_EmitConvertToTarget, 2, |
| 3085 | /* 5695*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3086 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3087 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3088 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3089 | /* 5705*/ 0, // EndSwitchType |
| 3090 | /* 5706*/ /*Scope*/ 79, /*->5786*/ |
| 3091 | /* 5707*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 3092 | /* 5710*/ OPC_MoveChild0, |
| 3093 | /* 5711*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 3094 | /* 5714*/ OPC_RecordMemRef, |
| 3095 | /* 5715*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 3096 | /* 5716*/ OPC_CheckFoldableChainNode, |
| 3097 | /* 5717*/ OPC_MoveChild1, |
| 3098 | /* 5718*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 3099 | /* 5721*/ OPC_RecordChild0, // #1 = $addr |
| 3100 | /* 5722*/ OPC_RecordChild1, // #2 = $off |
| 3101 | /* 5723*/ OPC_MoveChild1, |
| 3102 | /* 5724*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3103 | /* 5727*/ OPC_MoveParent, |
| 3104 | /* 5728*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 3105 | /* 5730*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->5758 |
| 3106 | /* 5733*/ OPC_MoveParent, |
| 3107 | /* 5734*/ OPC_RecordChild2, // #3 = $val |
| 3108 | /* 5735*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 3109 | /* 5737*/ OPC_MoveParent, |
| 3110 | /* 5738*/ OPC_CheckType, MVT::i32, |
| 3111 | /* 5740*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3112 | /* 5742*/ OPC_EmitMergeInputChains1_0, |
| 3113 | /* 5743*/ OPC_EmitInteger, MVT::i32, 0, |
| 3114 | /* 5746*/ OPC_EmitConvertToTarget, 2, |
| 3115 | /* 5748*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3116 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3117 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3118 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3119 | /* 5758*/ /*SwitchType*/ 25, MVT::i64,// ->5785 |
| 3120 | /* 5760*/ OPC_MoveParent, |
| 3121 | /* 5761*/ OPC_RecordChild2, // #3 = $val |
| 3122 | /* 5762*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 3123 | /* 5764*/ OPC_MoveParent, |
| 3124 | /* 5765*/ OPC_CheckType, MVT::i32, |
| 3125 | /* 5767*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3126 | /* 5769*/ OPC_EmitMergeInputChains1_0, |
| 3127 | /* 5770*/ OPC_EmitInteger, MVT::i32, 0, |
| 3128 | /* 5773*/ OPC_EmitConvertToTarget, 2, |
| 3129 | /* 5775*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3130 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3131 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3132 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3133 | /* 5785*/ 0, // EndSwitchType |
| 3134 | /* 5786*/ /*Scope*/ 80, /*->5867*/ |
| 3135 | /* 5787*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 3136 | /* 5791*/ OPC_MoveChild0, |
| 3137 | /* 5792*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 3138 | /* 5795*/ OPC_RecordMemRef, |
| 3139 | /* 5796*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 3140 | /* 5797*/ OPC_CheckFoldableChainNode, |
| 3141 | /* 5798*/ OPC_MoveChild1, |
| 3142 | /* 5799*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 3143 | /* 5802*/ OPC_RecordChild0, // #1 = $addr |
| 3144 | /* 5803*/ OPC_RecordChild1, // #2 = $off |
| 3145 | /* 5804*/ OPC_MoveChild1, |
| 3146 | /* 5805*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3147 | /* 5808*/ OPC_MoveParent, |
| 3148 | /* 5809*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 3149 | /* 5811*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->5839 |
| 3150 | /* 5814*/ OPC_MoveParent, |
| 3151 | /* 5815*/ OPC_RecordChild2, // #3 = $val |
| 3152 | /* 5816*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 3153 | /* 5818*/ OPC_MoveParent, |
| 3154 | /* 5819*/ OPC_CheckType, MVT::i32, |
| 3155 | /* 5821*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3156 | /* 5823*/ OPC_EmitMergeInputChains1_0, |
| 3157 | /* 5824*/ OPC_EmitInteger, MVT::i32, 0, |
| 3158 | /* 5827*/ OPC_EmitConvertToTarget, 2, |
| 3159 | /* 5829*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3160 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3161 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3162 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3163 | /* 5839*/ /*SwitchType*/ 25, MVT::i64,// ->5866 |
| 3164 | /* 5841*/ OPC_MoveParent, |
| 3165 | /* 5842*/ OPC_RecordChild2, // #3 = $val |
| 3166 | /* 5843*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 3167 | /* 5845*/ OPC_MoveParent, |
| 3168 | /* 5846*/ OPC_CheckType, MVT::i32, |
| 3169 | /* 5848*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3170 | /* 5850*/ OPC_EmitMergeInputChains1_0, |
| 3171 | /* 5851*/ OPC_EmitInteger, MVT::i32, 0, |
| 3172 | /* 5854*/ OPC_EmitConvertToTarget, 2, |
| 3173 | /* 5856*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3174 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3175 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3176 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3177 | /* 5866*/ 0, // EndSwitchType |
| 3178 | /* 5867*/ /*Scope*/ 79, /*->5947*/ |
| 3179 | /* 5868*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 3180 | /* 5871*/ OPC_MoveChild0, |
| 3181 | /* 5872*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 3182 | /* 5875*/ OPC_RecordMemRef, |
| 3183 | /* 5876*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 3184 | /* 5877*/ OPC_CheckFoldableChainNode, |
| 3185 | /* 5878*/ OPC_MoveChild1, |
| 3186 | /* 5879*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 3187 | /* 5882*/ OPC_RecordChild0, // #1 = $addr |
| 3188 | /* 5883*/ OPC_RecordChild1, // #2 = $off |
| 3189 | /* 5884*/ OPC_MoveChild1, |
| 3190 | /* 5885*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3191 | /* 5888*/ OPC_MoveParent, |
| 3192 | /* 5889*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 3193 | /* 5891*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->5919 |
| 3194 | /* 5894*/ OPC_MoveParent, |
| 3195 | /* 5895*/ OPC_RecordChild2, // #3 = $val |
| 3196 | /* 5896*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 3197 | /* 5898*/ OPC_MoveParent, |
| 3198 | /* 5899*/ OPC_CheckType, MVT::i32, |
| 3199 | /* 5901*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3200 | /* 5903*/ OPC_EmitMergeInputChains1_0, |
| 3201 | /* 5904*/ OPC_EmitInteger, MVT::i32, 0, |
| 3202 | /* 5907*/ OPC_EmitConvertToTarget, 2, |
| 3203 | /* 5909*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3204 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3205 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3206 | // Dst: (ATOMIC_RMW8_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3207 | /* 5919*/ /*SwitchType*/ 25, MVT::i64,// ->5946 |
| 3208 | /* 5921*/ OPC_MoveParent, |
| 3209 | /* 5922*/ OPC_RecordChild2, // #3 = $val |
| 3210 | /* 5923*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 3211 | /* 5925*/ OPC_MoveParent, |
| 3212 | /* 5926*/ OPC_CheckType, MVT::i32, |
| 3213 | /* 5928*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3214 | /* 5930*/ OPC_EmitMergeInputChains1_0, |
| 3215 | /* 5931*/ OPC_EmitInteger, MVT::i32, 0, |
| 3216 | /* 5934*/ OPC_EmitConvertToTarget, 2, |
| 3217 | /* 5936*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3218 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3219 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3220 | // Dst: (ATOMIC_RMW8_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3221 | /* 5946*/ 0, // EndSwitchType |
| 3222 | /* 5947*/ /*Scope*/ 80, /*->6028*/ |
| 3223 | /* 5948*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 3224 | /* 5952*/ OPC_MoveChild0, |
| 3225 | /* 5953*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 3226 | /* 5956*/ OPC_RecordMemRef, |
| 3227 | /* 5957*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 3228 | /* 5958*/ OPC_CheckFoldableChainNode, |
| 3229 | /* 5959*/ OPC_MoveChild1, |
| 3230 | /* 5960*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 3231 | /* 5963*/ OPC_RecordChild0, // #1 = $addr |
| 3232 | /* 5964*/ OPC_RecordChild1, // #2 = $off |
| 3233 | /* 5965*/ OPC_MoveChild1, |
| 3234 | /* 5966*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3235 | /* 5969*/ OPC_MoveParent, |
| 3236 | /* 5970*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 3237 | /* 5972*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6000 |
| 3238 | /* 5975*/ OPC_MoveParent, |
| 3239 | /* 5976*/ OPC_RecordChild2, // #3 = $val |
| 3240 | /* 5977*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 3241 | /* 5979*/ OPC_MoveParent, |
| 3242 | /* 5980*/ OPC_CheckType, MVT::i32, |
| 3243 | /* 5982*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3244 | /* 5984*/ OPC_EmitMergeInputChains1_0, |
| 3245 | /* 5985*/ OPC_EmitInteger, MVT::i32, 0, |
| 3246 | /* 5988*/ OPC_EmitConvertToTarget, 2, |
| 3247 | /* 5990*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3248 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3249 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3250 | // Dst: (ATOMIC_RMW16_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3251 | /* 6000*/ /*SwitchType*/ 25, MVT::i64,// ->6027 |
| 3252 | /* 6002*/ OPC_MoveParent, |
| 3253 | /* 6003*/ OPC_RecordChild2, // #3 = $val |
| 3254 | /* 6004*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 3255 | /* 6006*/ OPC_MoveParent, |
| 3256 | /* 6007*/ OPC_CheckType, MVT::i32, |
| 3257 | /* 6009*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3258 | /* 6011*/ OPC_EmitMergeInputChains1_0, |
| 3259 | /* 6012*/ OPC_EmitInteger, MVT::i32, 0, |
| 3260 | /* 6015*/ OPC_EmitConvertToTarget, 2, |
| 3261 | /* 6017*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3262 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3263 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3264 | // Dst: (ATOMIC_RMW16_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3265 | /* 6027*/ 0, // EndSwitchType |
| 3266 | /* 6028*/ /*Scope*/ 79, /*->6108*/ |
| 3267 | /* 6029*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 3268 | /* 6032*/ OPC_MoveChild0, |
| 3269 | /* 6033*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 3270 | /* 6036*/ OPC_RecordMemRef, |
| 3271 | /* 6037*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 3272 | /* 6038*/ OPC_CheckFoldableChainNode, |
| 3273 | /* 6039*/ OPC_MoveChild1, |
| 3274 | /* 6040*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 3275 | /* 6043*/ OPC_RecordChild0, // #1 = $addr |
| 3276 | /* 6044*/ OPC_RecordChild1, // #2 = $off |
| 3277 | /* 6045*/ OPC_MoveChild1, |
| 3278 | /* 6046*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3279 | /* 6049*/ OPC_MoveParent, |
| 3280 | /* 6050*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 3281 | /* 6052*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6080 |
| 3282 | /* 6055*/ OPC_MoveParent, |
| 3283 | /* 6056*/ OPC_RecordChild2, // #3 = $val |
| 3284 | /* 6057*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 3285 | /* 6059*/ OPC_MoveParent, |
| 3286 | /* 6060*/ OPC_CheckType, MVT::i32, |
| 3287 | /* 6062*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3288 | /* 6064*/ OPC_EmitMergeInputChains1_0, |
| 3289 | /* 6065*/ OPC_EmitInteger, MVT::i32, 0, |
| 3290 | /* 6068*/ OPC_EmitConvertToTarget, 2, |
| 3291 | /* 6070*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3292 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3293 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3294 | // Dst: (ATOMIC_RMW8_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3295 | /* 6080*/ /*SwitchType*/ 25, MVT::i64,// ->6107 |
| 3296 | /* 6082*/ OPC_MoveParent, |
| 3297 | /* 6083*/ OPC_RecordChild2, // #3 = $val |
| 3298 | /* 6084*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 3299 | /* 6086*/ OPC_MoveParent, |
| 3300 | /* 6087*/ OPC_CheckType, MVT::i32, |
| 3301 | /* 6089*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3302 | /* 6091*/ OPC_EmitMergeInputChains1_0, |
| 3303 | /* 6092*/ OPC_EmitInteger, MVT::i32, 0, |
| 3304 | /* 6095*/ OPC_EmitConvertToTarget, 2, |
| 3305 | /* 6097*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3306 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3307 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3308 | // Dst: (ATOMIC_RMW8_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3309 | /* 6107*/ 0, // EndSwitchType |
| 3310 | /* 6108*/ /*Scope*/ 80, /*->6189*/ |
| 3311 | /* 6109*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 3312 | /* 6113*/ OPC_MoveChild0, |
| 3313 | /* 6114*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 3314 | /* 6117*/ OPC_RecordMemRef, |
| 3315 | /* 6118*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 3316 | /* 6119*/ OPC_CheckFoldableChainNode, |
| 3317 | /* 6120*/ OPC_MoveChild1, |
| 3318 | /* 6121*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 3319 | /* 6124*/ OPC_RecordChild0, // #1 = $addr |
| 3320 | /* 6125*/ OPC_RecordChild1, // #2 = $off |
| 3321 | /* 6126*/ OPC_MoveChild1, |
| 3322 | /* 6127*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3323 | /* 6130*/ OPC_MoveParent, |
| 3324 | /* 6131*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 3325 | /* 6133*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6161 |
| 3326 | /* 6136*/ OPC_MoveParent, |
| 3327 | /* 6137*/ OPC_RecordChild2, // #3 = $val |
| 3328 | /* 6138*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 3329 | /* 6140*/ OPC_MoveParent, |
| 3330 | /* 6141*/ OPC_CheckType, MVT::i32, |
| 3331 | /* 6143*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3332 | /* 6145*/ OPC_EmitMergeInputChains1_0, |
| 3333 | /* 6146*/ OPC_EmitInteger, MVT::i32, 0, |
| 3334 | /* 6149*/ OPC_EmitConvertToTarget, 2, |
| 3335 | /* 6151*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3336 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3337 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3338 | // Dst: (ATOMIC_RMW16_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3339 | /* 6161*/ /*SwitchType*/ 25, MVT::i64,// ->6188 |
| 3340 | /* 6163*/ OPC_MoveParent, |
| 3341 | /* 6164*/ OPC_RecordChild2, // #3 = $val |
| 3342 | /* 6165*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 3343 | /* 6167*/ OPC_MoveParent, |
| 3344 | /* 6168*/ OPC_CheckType, MVT::i32, |
| 3345 | /* 6170*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3346 | /* 6172*/ OPC_EmitMergeInputChains1_0, |
| 3347 | /* 6173*/ OPC_EmitInteger, MVT::i32, 0, |
| 3348 | /* 6176*/ OPC_EmitConvertToTarget, 2, |
| 3349 | /* 6178*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3350 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3351 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3352 | // Dst: (ATOMIC_RMW16_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3353 | /* 6188*/ 0, // EndSwitchType |
| 3354 | /* 6189*/ /*Scope*/ 79, /*->6269*/ |
| 3355 | /* 6190*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 3356 | /* 6193*/ OPC_MoveChild0, |
| 3357 | /* 6194*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 3358 | /* 6197*/ OPC_RecordMemRef, |
| 3359 | /* 6198*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 3360 | /* 6199*/ OPC_CheckFoldableChainNode, |
| 3361 | /* 6200*/ OPC_MoveChild1, |
| 3362 | /* 6201*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 3363 | /* 6204*/ OPC_RecordChild0, // #1 = $addr |
| 3364 | /* 6205*/ OPC_RecordChild1, // #2 = $off |
| 3365 | /* 6206*/ OPC_MoveChild1, |
| 3366 | /* 6207*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3367 | /* 6210*/ OPC_MoveParent, |
| 3368 | /* 6211*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 3369 | /* 6213*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6241 |
| 3370 | /* 6216*/ OPC_MoveParent, |
| 3371 | /* 6217*/ OPC_RecordChild2, // #3 = $val |
| 3372 | /* 6218*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 3373 | /* 6220*/ OPC_MoveParent, |
| 3374 | /* 6221*/ OPC_CheckType, MVT::i32, |
| 3375 | /* 6223*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3376 | /* 6225*/ OPC_EmitMergeInputChains1_0, |
| 3377 | /* 6226*/ OPC_EmitInteger, MVT::i32, 0, |
| 3378 | /* 6229*/ OPC_EmitConvertToTarget, 2, |
| 3379 | /* 6231*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3380 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3381 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3382 | // Dst: (ATOMIC_RMW8_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3383 | /* 6241*/ /*SwitchType*/ 25, MVT::i64,// ->6268 |
| 3384 | /* 6243*/ OPC_MoveParent, |
| 3385 | /* 6244*/ OPC_RecordChild2, // #3 = $val |
| 3386 | /* 6245*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 3387 | /* 6247*/ OPC_MoveParent, |
| 3388 | /* 6248*/ OPC_CheckType, MVT::i32, |
| 3389 | /* 6250*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3390 | /* 6252*/ OPC_EmitMergeInputChains1_0, |
| 3391 | /* 6253*/ OPC_EmitInteger, MVT::i32, 0, |
| 3392 | /* 6256*/ OPC_EmitConvertToTarget, 2, |
| 3393 | /* 6258*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3394 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3395 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3396 | // Dst: (ATOMIC_RMW8_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3397 | /* 6268*/ 0, // EndSwitchType |
| 3398 | /* 6269*/ /*Scope*/ 80, /*->6350*/ |
| 3399 | /* 6270*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 3400 | /* 6274*/ OPC_MoveChild0, |
| 3401 | /* 6275*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 3402 | /* 6278*/ OPC_RecordMemRef, |
| 3403 | /* 6279*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 3404 | /* 6280*/ OPC_CheckFoldableChainNode, |
| 3405 | /* 6281*/ OPC_MoveChild1, |
| 3406 | /* 6282*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 3407 | /* 6285*/ OPC_RecordChild0, // #1 = $addr |
| 3408 | /* 6286*/ OPC_RecordChild1, // #2 = $off |
| 3409 | /* 6287*/ OPC_MoveChild1, |
| 3410 | /* 6288*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3411 | /* 6291*/ OPC_MoveParent, |
| 3412 | /* 6292*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 3413 | /* 6294*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6322 |
| 3414 | /* 6297*/ OPC_MoveParent, |
| 3415 | /* 6298*/ OPC_RecordChild2, // #3 = $val |
| 3416 | /* 6299*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 3417 | /* 6301*/ OPC_MoveParent, |
| 3418 | /* 6302*/ OPC_CheckType, MVT::i32, |
| 3419 | /* 6304*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3420 | /* 6306*/ OPC_EmitMergeInputChains1_0, |
| 3421 | /* 6307*/ OPC_EmitInteger, MVT::i32, 0, |
| 3422 | /* 6310*/ OPC_EmitConvertToTarget, 2, |
| 3423 | /* 6312*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3424 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3425 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3426 | // Dst: (ATOMIC_RMW16_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3427 | /* 6322*/ /*SwitchType*/ 25, MVT::i64,// ->6349 |
| 3428 | /* 6324*/ OPC_MoveParent, |
| 3429 | /* 6325*/ OPC_RecordChild2, // #3 = $val |
| 3430 | /* 6326*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 3431 | /* 6328*/ OPC_MoveParent, |
| 3432 | /* 6329*/ OPC_CheckType, MVT::i32, |
| 3433 | /* 6331*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3434 | /* 6333*/ OPC_EmitMergeInputChains1_0, |
| 3435 | /* 6334*/ OPC_EmitInteger, MVT::i32, 0, |
| 3436 | /* 6337*/ OPC_EmitConvertToTarget, 2, |
| 3437 | /* 6339*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3438 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3439 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3440 | // Dst: (ATOMIC_RMW16_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3441 | /* 6349*/ 0, // EndSwitchType |
| 3442 | /* 6350*/ /*Scope*/ 79, /*->6430*/ |
| 3443 | /* 6351*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 3444 | /* 6354*/ OPC_MoveChild0, |
| 3445 | /* 6355*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 3446 | /* 6358*/ OPC_RecordMemRef, |
| 3447 | /* 6359*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 3448 | /* 6360*/ OPC_CheckFoldableChainNode, |
| 3449 | /* 6361*/ OPC_MoveChild1, |
| 3450 | /* 6362*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 3451 | /* 6365*/ OPC_RecordChild0, // #1 = $addr |
| 3452 | /* 6366*/ OPC_RecordChild1, // #2 = $off |
| 3453 | /* 6367*/ OPC_MoveChild1, |
| 3454 | /* 6368*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3455 | /* 6371*/ OPC_MoveParent, |
| 3456 | /* 6372*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 3457 | /* 6374*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6402 |
| 3458 | /* 6377*/ OPC_MoveParent, |
| 3459 | /* 6378*/ OPC_RecordChild2, // #3 = $val |
| 3460 | /* 6379*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 3461 | /* 6381*/ OPC_MoveParent, |
| 3462 | /* 6382*/ OPC_CheckType, MVT::i32, |
| 3463 | /* 6384*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3464 | /* 6386*/ OPC_EmitMergeInputChains1_0, |
| 3465 | /* 6387*/ OPC_EmitInteger, MVT::i32, 0, |
| 3466 | /* 6390*/ OPC_EmitConvertToTarget, 2, |
| 3467 | /* 6392*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3468 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3469 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3470 | // Dst: (ATOMIC_RMW8_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3471 | /* 6402*/ /*SwitchType*/ 25, MVT::i64,// ->6429 |
| 3472 | /* 6404*/ OPC_MoveParent, |
| 3473 | /* 6405*/ OPC_RecordChild2, // #3 = $val |
| 3474 | /* 6406*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 3475 | /* 6408*/ OPC_MoveParent, |
| 3476 | /* 6409*/ OPC_CheckType, MVT::i32, |
| 3477 | /* 6411*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3478 | /* 6413*/ OPC_EmitMergeInputChains1_0, |
| 3479 | /* 6414*/ OPC_EmitInteger, MVT::i32, 0, |
| 3480 | /* 6417*/ OPC_EmitConvertToTarget, 2, |
| 3481 | /* 6419*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3482 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3483 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3484 | // Dst: (ATOMIC_RMW8_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3485 | /* 6429*/ 0, // EndSwitchType |
| 3486 | /* 6430*/ /*Scope*/ 80, /*->6511*/ |
| 3487 | /* 6431*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 3488 | /* 6435*/ OPC_MoveChild0, |
| 3489 | /* 6436*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 3490 | /* 6439*/ OPC_RecordMemRef, |
| 3491 | /* 6440*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 3492 | /* 6441*/ OPC_CheckFoldableChainNode, |
| 3493 | /* 6442*/ OPC_MoveChild1, |
| 3494 | /* 6443*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 3495 | /* 6446*/ OPC_RecordChild0, // #1 = $addr |
| 3496 | /* 6447*/ OPC_RecordChild1, // #2 = $off |
| 3497 | /* 6448*/ OPC_MoveChild1, |
| 3498 | /* 6449*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3499 | /* 6452*/ OPC_MoveParent, |
| 3500 | /* 6453*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 3501 | /* 6455*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6483 |
| 3502 | /* 6458*/ OPC_MoveParent, |
| 3503 | /* 6459*/ OPC_RecordChild2, // #3 = $val |
| 3504 | /* 6460*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 3505 | /* 6462*/ OPC_MoveParent, |
| 3506 | /* 6463*/ OPC_CheckType, MVT::i32, |
| 3507 | /* 6465*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3508 | /* 6467*/ OPC_EmitMergeInputChains1_0, |
| 3509 | /* 6468*/ OPC_EmitInteger, MVT::i32, 0, |
| 3510 | /* 6471*/ OPC_EmitConvertToTarget, 2, |
| 3511 | /* 6473*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3512 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3513 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3514 | // Dst: (ATOMIC_RMW16_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3515 | /* 6483*/ /*SwitchType*/ 25, MVT::i64,// ->6510 |
| 3516 | /* 6485*/ OPC_MoveParent, |
| 3517 | /* 6486*/ OPC_RecordChild2, // #3 = $val |
| 3518 | /* 6487*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 3519 | /* 6489*/ OPC_MoveParent, |
| 3520 | /* 6490*/ OPC_CheckType, MVT::i32, |
| 3521 | /* 6492*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3522 | /* 6494*/ OPC_EmitMergeInputChains1_0, |
| 3523 | /* 6495*/ OPC_EmitInteger, MVT::i32, 0, |
| 3524 | /* 6498*/ OPC_EmitConvertToTarget, 2, |
| 3525 | /* 6500*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3526 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3527 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3528 | // Dst: (ATOMIC_RMW16_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3529 | /* 6510*/ 0, // EndSwitchType |
| 3530 | /* 6511*/ /*Scope*/ 79, /*->6591*/ |
| 3531 | /* 6512*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 3532 | /* 6515*/ OPC_MoveChild0, |
| 3533 | /* 6516*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 3534 | /* 6519*/ OPC_RecordMemRef, |
| 3535 | /* 6520*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 3536 | /* 6521*/ OPC_CheckFoldableChainNode, |
| 3537 | /* 6522*/ OPC_MoveChild1, |
| 3538 | /* 6523*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 3539 | /* 6526*/ OPC_RecordChild0, // #1 = $addr |
| 3540 | /* 6527*/ OPC_RecordChild1, // #2 = $off |
| 3541 | /* 6528*/ OPC_MoveChild1, |
| 3542 | /* 6529*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3543 | /* 6532*/ OPC_MoveParent, |
| 3544 | /* 6533*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 3545 | /* 6535*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6563 |
| 3546 | /* 6538*/ OPC_MoveParent, |
| 3547 | /* 6539*/ OPC_RecordChild2, // #3 = $val |
| 3548 | /* 6540*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 3549 | /* 6542*/ OPC_MoveParent, |
| 3550 | /* 6543*/ OPC_CheckType, MVT::i32, |
| 3551 | /* 6545*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3552 | /* 6547*/ OPC_EmitMergeInputChains1_0, |
| 3553 | /* 6548*/ OPC_EmitInteger, MVT::i32, 0, |
| 3554 | /* 6551*/ OPC_EmitConvertToTarget, 2, |
| 3555 | /* 6553*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3556 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3557 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3558 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3559 | /* 6563*/ /*SwitchType*/ 25, MVT::i64,// ->6590 |
| 3560 | /* 6565*/ OPC_MoveParent, |
| 3561 | /* 6566*/ OPC_RecordChild2, // #3 = $val |
| 3562 | /* 6567*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 3563 | /* 6569*/ OPC_MoveParent, |
| 3564 | /* 6570*/ OPC_CheckType, MVT::i32, |
| 3565 | /* 6572*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3566 | /* 6574*/ OPC_EmitMergeInputChains1_0, |
| 3567 | /* 6575*/ OPC_EmitInteger, MVT::i32, 0, |
| 3568 | /* 6578*/ OPC_EmitConvertToTarget, 2, |
| 3569 | /* 6580*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3570 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3571 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3572 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3573 | /* 6590*/ 0, // EndSwitchType |
| 3574 | /* 6591*/ /*Scope*/ 80, /*->6672*/ |
| 3575 | /* 6592*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 3576 | /* 6596*/ OPC_MoveChild0, |
| 3577 | /* 6597*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 3578 | /* 6600*/ OPC_RecordMemRef, |
| 3579 | /* 6601*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 3580 | /* 6602*/ OPC_CheckFoldableChainNode, |
| 3581 | /* 6603*/ OPC_MoveChild1, |
| 3582 | /* 6604*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 3583 | /* 6607*/ OPC_RecordChild0, // #1 = $addr |
| 3584 | /* 6608*/ OPC_RecordChild1, // #2 = $off |
| 3585 | /* 6609*/ OPC_MoveChild1, |
| 3586 | /* 6610*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3587 | /* 6613*/ OPC_MoveParent, |
| 3588 | /* 6614*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 3589 | /* 6616*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6644 |
| 3590 | /* 6619*/ OPC_MoveParent, |
| 3591 | /* 6620*/ OPC_RecordChild2, // #3 = $val |
| 3592 | /* 6621*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 3593 | /* 6623*/ OPC_MoveParent, |
| 3594 | /* 6624*/ OPC_CheckType, MVT::i32, |
| 3595 | /* 6626*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3596 | /* 6628*/ OPC_EmitMergeInputChains1_0, |
| 3597 | /* 6629*/ OPC_EmitInteger, MVT::i32, 0, |
| 3598 | /* 6632*/ OPC_EmitConvertToTarget, 2, |
| 3599 | /* 6634*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3600 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3601 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3602 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3603 | /* 6644*/ /*SwitchType*/ 25, MVT::i64,// ->6671 |
| 3604 | /* 6646*/ OPC_MoveParent, |
| 3605 | /* 6647*/ OPC_RecordChild2, // #3 = $val |
| 3606 | /* 6648*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 3607 | /* 6650*/ OPC_MoveParent, |
| 3608 | /* 6651*/ OPC_CheckType, MVT::i32, |
| 3609 | /* 6653*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3610 | /* 6655*/ OPC_EmitMergeInputChains1_0, |
| 3611 | /* 6656*/ OPC_EmitInteger, MVT::i32, 0, |
| 3612 | /* 6659*/ OPC_EmitConvertToTarget, 2, |
| 3613 | /* 6661*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3614 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3615 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3616 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3617 | /* 6671*/ 0, // EndSwitchType |
| 3618 | /* 6672*/ /*Scope*/ 79, /*->6752*/ |
| 3619 | /* 6673*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 3620 | /* 6676*/ OPC_MoveChild0, |
| 3621 | /* 6677*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 3622 | /* 6680*/ OPC_RecordMemRef, |
| 3623 | /* 6681*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 3624 | /* 6682*/ OPC_CheckFoldableChainNode, |
| 3625 | /* 6683*/ OPC_MoveChild1, |
| 3626 | /* 6684*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 3627 | /* 6687*/ OPC_RecordChild0, // #1 = $addr |
| 3628 | /* 6688*/ OPC_RecordChild1, // #2 = $off |
| 3629 | /* 6689*/ OPC_MoveChild1, |
| 3630 | /* 6690*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3631 | /* 6693*/ OPC_MoveParent, |
| 3632 | /* 6694*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 3633 | /* 6696*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6724 |
| 3634 | /* 6699*/ OPC_MoveParent, |
| 3635 | /* 6700*/ OPC_RecordChild2, // #3 = $val |
| 3636 | /* 6701*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 3637 | /* 6703*/ OPC_MoveParent, |
| 3638 | /* 6704*/ OPC_CheckType, MVT::i32, |
| 3639 | /* 6706*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3640 | /* 6708*/ OPC_EmitMergeInputChains1_0, |
| 3641 | /* 6709*/ OPC_EmitInteger, MVT::i32, 0, |
| 3642 | /* 6712*/ OPC_EmitConvertToTarget, 2, |
| 3643 | /* 6714*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3644 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3645 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3646 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3647 | /* 6724*/ /*SwitchType*/ 25, MVT::i64,// ->6751 |
| 3648 | /* 6726*/ OPC_MoveParent, |
| 3649 | /* 6727*/ OPC_RecordChild2, // #3 = $val |
| 3650 | /* 6728*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 3651 | /* 6730*/ OPC_MoveParent, |
| 3652 | /* 6731*/ OPC_CheckType, MVT::i32, |
| 3653 | /* 6733*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3654 | /* 6735*/ OPC_EmitMergeInputChains1_0, |
| 3655 | /* 6736*/ OPC_EmitInteger, MVT::i32, 0, |
| 3656 | /* 6739*/ OPC_EmitConvertToTarget, 2, |
| 3657 | /* 6741*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3658 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3659 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3660 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3661 | /* 6751*/ 0, // EndSwitchType |
| 3662 | /* 6752*/ /*Scope*/ 80, /*->6833*/ |
| 3663 | /* 6753*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 3664 | /* 6757*/ OPC_MoveChild0, |
| 3665 | /* 6758*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 3666 | /* 6761*/ OPC_RecordMemRef, |
| 3667 | /* 6762*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 3668 | /* 6763*/ OPC_CheckFoldableChainNode, |
| 3669 | /* 6764*/ OPC_MoveChild1, |
| 3670 | /* 6765*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 3671 | /* 6768*/ OPC_RecordChild0, // #1 = $addr |
| 3672 | /* 6769*/ OPC_RecordChild1, // #2 = $off |
| 3673 | /* 6770*/ OPC_MoveChild1, |
| 3674 | /* 6771*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3675 | /* 6774*/ OPC_MoveParent, |
| 3676 | /* 6775*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 3677 | /* 6777*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6805 |
| 3678 | /* 6780*/ OPC_MoveParent, |
| 3679 | /* 6781*/ OPC_RecordChild2, // #3 = $val |
| 3680 | /* 6782*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 3681 | /* 6784*/ OPC_MoveParent, |
| 3682 | /* 6785*/ OPC_CheckType, MVT::i32, |
| 3683 | /* 6787*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3684 | /* 6789*/ OPC_EmitMergeInputChains1_0, |
| 3685 | /* 6790*/ OPC_EmitInteger, MVT::i32, 0, |
| 3686 | /* 6793*/ OPC_EmitConvertToTarget, 2, |
| 3687 | /* 6795*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3688 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3689 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3690 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3691 | /* 6805*/ /*SwitchType*/ 25, MVT::i64,// ->6832 |
| 3692 | /* 6807*/ OPC_MoveParent, |
| 3693 | /* 6808*/ OPC_RecordChild2, // #3 = $val |
| 3694 | /* 6809*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 3695 | /* 6811*/ OPC_MoveParent, |
| 3696 | /* 6812*/ OPC_CheckType, MVT::i32, |
| 3697 | /* 6814*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3698 | /* 6816*/ OPC_EmitMergeInputChains1_0, |
| 3699 | /* 6817*/ OPC_EmitInteger, MVT::i32, 0, |
| 3700 | /* 6820*/ OPC_EmitConvertToTarget, 2, |
| 3701 | /* 6822*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3702 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3703 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3704 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3705 | /* 6832*/ 0, // EndSwitchType |
| 3706 | /* 6833*/ /*Scope*/ 79, /*->6913*/ |
| 3707 | /* 6834*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 3708 | /* 6837*/ OPC_MoveChild0, |
| 3709 | /* 6838*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 3710 | /* 6841*/ OPC_RecordMemRef, |
| 3711 | /* 6842*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 3712 | /* 6843*/ OPC_CheckFoldableChainNode, |
| 3713 | /* 6844*/ OPC_MoveChild1, |
| 3714 | /* 6845*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 3715 | /* 6848*/ OPC_RecordChild0, // #1 = $addr |
| 3716 | /* 6849*/ OPC_RecordChild1, // #2 = $off |
| 3717 | /* 6850*/ OPC_MoveChild1, |
| 3718 | /* 6851*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3719 | /* 6854*/ OPC_MoveParent, |
| 3720 | /* 6855*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 3721 | /* 6857*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6885 |
| 3722 | /* 6860*/ OPC_MoveParent, |
| 3723 | /* 6861*/ OPC_RecordChild2, // #3 = $val |
| 3724 | /* 6862*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 3725 | /* 6864*/ OPC_MoveParent, |
| 3726 | /* 6865*/ OPC_CheckType, MVT::i32, |
| 3727 | /* 6867*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3728 | /* 6869*/ OPC_EmitMergeInputChains1_0, |
| 3729 | /* 6870*/ OPC_EmitInteger, MVT::i32, 0, |
| 3730 | /* 6873*/ OPC_EmitConvertToTarget, 2, |
| 3731 | /* 6875*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3732 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3733 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3734 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3735 | /* 6885*/ /*SwitchType*/ 25, MVT::i64,// ->6912 |
| 3736 | /* 6887*/ OPC_MoveParent, |
| 3737 | /* 6888*/ OPC_RecordChild2, // #3 = $val |
| 3738 | /* 6889*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 3739 | /* 6891*/ OPC_MoveParent, |
| 3740 | /* 6892*/ OPC_CheckType, MVT::i32, |
| 3741 | /* 6894*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3742 | /* 6896*/ OPC_EmitMergeInputChains1_0, |
| 3743 | /* 6897*/ OPC_EmitInteger, MVT::i32, 0, |
| 3744 | /* 6900*/ OPC_EmitConvertToTarget, 2, |
| 3745 | /* 6902*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3746 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3747 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3748 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3749 | /* 6912*/ 0, // EndSwitchType |
| 3750 | /* 6913*/ /*Scope*/ 80, /*->6994*/ |
| 3751 | /* 6914*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 3752 | /* 6918*/ OPC_MoveChild0, |
| 3753 | /* 6919*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 3754 | /* 6922*/ OPC_RecordMemRef, |
| 3755 | /* 6923*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 3756 | /* 6924*/ OPC_CheckFoldableChainNode, |
| 3757 | /* 6925*/ OPC_MoveChild1, |
| 3758 | /* 6926*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 3759 | /* 6929*/ OPC_RecordChild0, // #1 = $addr |
| 3760 | /* 6930*/ OPC_RecordChild1, // #2 = $off |
| 3761 | /* 6931*/ OPC_MoveChild1, |
| 3762 | /* 6932*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3763 | /* 6935*/ OPC_MoveParent, |
| 3764 | /* 6936*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 3765 | /* 6938*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->6966 |
| 3766 | /* 6941*/ OPC_MoveParent, |
| 3767 | /* 6942*/ OPC_RecordChild2, // #3 = $val |
| 3768 | /* 6943*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 3769 | /* 6945*/ OPC_MoveParent, |
| 3770 | /* 6946*/ OPC_CheckType, MVT::i32, |
| 3771 | /* 6948*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3772 | /* 6950*/ OPC_EmitMergeInputChains1_0, |
| 3773 | /* 6951*/ OPC_EmitInteger, MVT::i32, 0, |
| 3774 | /* 6954*/ OPC_EmitConvertToTarget, 2, |
| 3775 | /* 6956*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3776 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3777 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3778 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3779 | /* 6966*/ /*SwitchType*/ 25, MVT::i64,// ->6993 |
| 3780 | /* 6968*/ OPC_MoveParent, |
| 3781 | /* 6969*/ OPC_RecordChild2, // #3 = $val |
| 3782 | /* 6970*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 3783 | /* 6972*/ OPC_MoveParent, |
| 3784 | /* 6973*/ OPC_CheckType, MVT::i32, |
| 3785 | /* 6975*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3786 | /* 6977*/ OPC_EmitMergeInputChains1_0, |
| 3787 | /* 6978*/ OPC_EmitInteger, MVT::i32, 0, |
| 3788 | /* 6981*/ OPC_EmitConvertToTarget, 2, |
| 3789 | /* 6983*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3790 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3791 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3792 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3793 | /* 6993*/ 0, // EndSwitchType |
| 3794 | /* 6994*/ /*Scope*/ 79, /*->7074*/ |
| 3795 | /* 6995*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 3796 | /* 6998*/ OPC_MoveChild0, |
| 3797 | /* 6999*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 3798 | /* 7002*/ OPC_RecordMemRef, |
| 3799 | /* 7003*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 3800 | /* 7004*/ OPC_CheckFoldableChainNode, |
| 3801 | /* 7005*/ OPC_MoveChild1, |
| 3802 | /* 7006*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 3803 | /* 7009*/ OPC_RecordChild0, // #1 = $addr |
| 3804 | /* 7010*/ OPC_RecordChild1, // #2 = $off |
| 3805 | /* 7011*/ OPC_MoveChild1, |
| 3806 | /* 7012*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3807 | /* 7015*/ OPC_MoveParent, |
| 3808 | /* 7016*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 3809 | /* 7018*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->7046 |
| 3810 | /* 7021*/ OPC_MoveParent, |
| 3811 | /* 7022*/ OPC_RecordChild2, // #3 = $val |
| 3812 | /* 7023*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 3813 | /* 7025*/ OPC_MoveParent, |
| 3814 | /* 7026*/ OPC_CheckType, MVT::i32, |
| 3815 | /* 7028*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3816 | /* 7030*/ OPC_EmitMergeInputChains1_0, |
| 3817 | /* 7031*/ OPC_EmitInteger, MVT::i32, 0, |
| 3818 | /* 7034*/ OPC_EmitConvertToTarget, 2, |
| 3819 | /* 7036*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3820 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3821 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3822 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3823 | /* 7046*/ /*SwitchType*/ 25, MVT::i64,// ->7073 |
| 3824 | /* 7048*/ OPC_MoveParent, |
| 3825 | /* 7049*/ OPC_RecordChild2, // #3 = $val |
| 3826 | /* 7050*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 3827 | /* 7052*/ OPC_MoveParent, |
| 3828 | /* 7053*/ OPC_CheckType, MVT::i32, |
| 3829 | /* 7055*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3830 | /* 7057*/ OPC_EmitMergeInputChains1_0, |
| 3831 | /* 7058*/ OPC_EmitInteger, MVT::i32, 0, |
| 3832 | /* 7061*/ OPC_EmitConvertToTarget, 2, |
| 3833 | /* 7063*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3834 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3835 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3836 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3837 | /* 7073*/ 0, // EndSwitchType |
| 3838 | /* 7074*/ /*Scope*/ 80, /*->7155*/ |
| 3839 | /* 7075*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 3840 | /* 7079*/ OPC_MoveChild0, |
| 3841 | /* 7080*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 3842 | /* 7083*/ OPC_RecordMemRef, |
| 3843 | /* 7084*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 3844 | /* 7085*/ OPC_CheckFoldableChainNode, |
| 3845 | /* 7086*/ OPC_MoveChild1, |
| 3846 | /* 7087*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 3847 | /* 7090*/ OPC_RecordChild0, // #1 = $addr |
| 3848 | /* 7091*/ OPC_RecordChild1, // #2 = $off |
| 3849 | /* 7092*/ OPC_MoveChild1, |
| 3850 | /* 7093*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3851 | /* 7096*/ OPC_MoveParent, |
| 3852 | /* 7097*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 3853 | /* 7099*/ OPC_SwitchType /*2 cases */, 25, MVT::i32,// ->7127 |
| 3854 | /* 7102*/ OPC_MoveParent, |
| 3855 | /* 7103*/ OPC_RecordChild2, // #3 = $val |
| 3856 | /* 7104*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 3857 | /* 7106*/ OPC_MoveParent, |
| 3858 | /* 7107*/ OPC_CheckType, MVT::i32, |
| 3859 | /* 7109*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3860 | /* 7111*/ OPC_EmitMergeInputChains1_0, |
| 3861 | /* 7112*/ OPC_EmitInteger, MVT::i32, 0, |
| 3862 | /* 7115*/ OPC_EmitConvertToTarget, 2, |
| 3863 | /* 7117*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3864 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3865 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3866 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 3867 | /* 7127*/ /*SwitchType*/ 25, MVT::i64,// ->7154 |
| 3868 | /* 7129*/ OPC_MoveParent, |
| 3869 | /* 7130*/ OPC_RecordChild2, // #3 = $val |
| 3870 | /* 7131*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 3871 | /* 7133*/ OPC_MoveParent, |
| 3872 | /* 7134*/ OPC_CheckType, MVT::i32, |
| 3873 | /* 7136*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3874 | /* 7138*/ OPC_EmitMergeInputChains1_0, |
| 3875 | /* 7139*/ OPC_EmitInteger, MVT::i32, 0, |
| 3876 | /* 7142*/ OPC_EmitConvertToTarget, 2, |
| 3877 | /* 7144*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3878 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 3879 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3880 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 3881 | /* 7154*/ 0, // EndSwitchType |
| 3882 | /* 7155*/ /*Scope*/ 83, /*->7239*/ |
| 3883 | /* 7156*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 3884 | /* 7159*/ OPC_MoveChild0, |
| 3885 | /* 7160*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| 3886 | /* 7163*/ OPC_RecordMemRef, |
| 3887 | /* 7164*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 3888 | /* 7165*/ OPC_CheckFoldableChainNode, |
| 3889 | /* 7166*/ OPC_MoveChild1, |
| 3890 | /* 7167*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 3891 | /* 7170*/ OPC_RecordChild0, // #1 = $addr |
| 3892 | /* 7171*/ OPC_RecordChild1, // #2 = $off |
| 3893 | /* 7172*/ OPC_MoveChild1, |
| 3894 | /* 7173*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3895 | /* 7176*/ OPC_MoveParent, |
| 3896 | /* 7177*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 3897 | /* 7179*/ OPC_SwitchType /*2 cases */, 27, MVT::i32,// ->7209 |
| 3898 | /* 7182*/ OPC_MoveParent, |
| 3899 | /* 7183*/ OPC_RecordChild2, // #3 = $exp |
| 3900 | /* 7184*/ OPC_RecordChild3, // #4 = $new |
| 3901 | /* 7185*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 3902 | /* 7187*/ OPC_MoveParent, |
| 3903 | /* 7188*/ OPC_CheckType, MVT::i32, |
| 3904 | /* 7190*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3905 | /* 7192*/ OPC_EmitMergeInputChains1_0, |
| 3906 | /* 7193*/ OPC_EmitInteger, MVT::i32, 0, |
| 3907 | /* 7196*/ OPC_EmitConvertToTarget, 2, |
| 3908 | /* 7198*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3909 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 3910 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3911 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 3912 | /* 7209*/ /*SwitchType*/ 27, MVT::i64,// ->7238 |
| 3913 | /* 7211*/ OPC_MoveParent, |
| 3914 | /* 7212*/ OPC_RecordChild2, // #3 = $exp |
| 3915 | /* 7213*/ OPC_RecordChild3, // #4 = $new |
| 3916 | /* 7214*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 3917 | /* 7216*/ OPC_MoveParent, |
| 3918 | /* 7217*/ OPC_CheckType, MVT::i32, |
| 3919 | /* 7219*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3920 | /* 7221*/ OPC_EmitMergeInputChains1_0, |
| 3921 | /* 7222*/ OPC_EmitInteger, MVT::i32, 0, |
| 3922 | /* 7225*/ OPC_EmitConvertToTarget, 2, |
| 3923 | /* 7227*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3924 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 3925 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 3926 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 3927 | /* 7238*/ 0, // EndSwitchType |
| 3928 | /* 7239*/ /*Scope*/ 84, /*->7324*/ |
| 3929 | /* 7240*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 3930 | /* 7244*/ OPC_MoveChild0, |
| 3931 | /* 7245*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| 3932 | /* 7248*/ OPC_RecordMemRef, |
| 3933 | /* 7249*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 3934 | /* 7250*/ OPC_CheckFoldableChainNode, |
| 3935 | /* 7251*/ OPC_MoveChild1, |
| 3936 | /* 7252*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 3937 | /* 7255*/ OPC_RecordChild0, // #1 = $addr |
| 3938 | /* 7256*/ OPC_RecordChild1, // #2 = $off |
| 3939 | /* 7257*/ OPC_MoveChild1, |
| 3940 | /* 7258*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3941 | /* 7261*/ OPC_MoveParent, |
| 3942 | /* 7262*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 3943 | /* 7264*/ OPC_SwitchType /*2 cases */, 27, MVT::i32,// ->7294 |
| 3944 | /* 7267*/ OPC_MoveParent, |
| 3945 | /* 7268*/ OPC_RecordChild2, // #3 = $exp |
| 3946 | /* 7269*/ OPC_RecordChild3, // #4 = $new |
| 3947 | /* 7270*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 3948 | /* 7272*/ OPC_MoveParent, |
| 3949 | /* 7273*/ OPC_CheckType, MVT::i32, |
| 3950 | /* 7275*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3951 | /* 7277*/ OPC_EmitMergeInputChains1_0, |
| 3952 | /* 7278*/ OPC_EmitInteger, MVT::i32, 0, |
| 3953 | /* 7281*/ OPC_EmitConvertToTarget, 2, |
| 3954 | /* 7283*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3955 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 3956 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3957 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 3958 | /* 7294*/ /*SwitchType*/ 27, MVT::i64,// ->7323 |
| 3959 | /* 7296*/ OPC_MoveParent, |
| 3960 | /* 7297*/ OPC_RecordChild2, // #3 = $exp |
| 3961 | /* 7298*/ OPC_RecordChild3, // #4 = $new |
| 3962 | /* 7299*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 3963 | /* 7301*/ OPC_MoveParent, |
| 3964 | /* 7302*/ OPC_CheckType, MVT::i32, |
| 3965 | /* 7304*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3966 | /* 7306*/ OPC_EmitMergeInputChains1_0, |
| 3967 | /* 7307*/ OPC_EmitInteger, MVT::i32, 0, |
| 3968 | /* 7310*/ OPC_EmitConvertToTarget, 2, |
| 3969 | /* 7312*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3970 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 3971 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 3972 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 3973 | /* 7323*/ 0, // EndSwitchType |
| 3974 | /* 7324*/ /*Scope*/ 83, /*->7408*/ |
| 3975 | /* 7325*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 3976 | /* 7328*/ OPC_MoveChild0, |
| 3977 | /* 7329*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| 3978 | /* 7332*/ OPC_RecordMemRef, |
| 3979 | /* 7333*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 3980 | /* 7334*/ OPC_CheckFoldableChainNode, |
| 3981 | /* 7335*/ OPC_MoveChild1, |
| 3982 | /* 7336*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 3983 | /* 7339*/ OPC_RecordChild0, // #1 = $addr |
| 3984 | /* 7340*/ OPC_RecordChild1, // #2 = $off |
| 3985 | /* 7341*/ OPC_MoveChild1, |
| 3986 | /* 7342*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 3987 | /* 7345*/ OPC_MoveParent, |
| 3988 | /* 7346*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 3989 | /* 7348*/ OPC_SwitchType /*2 cases */, 27, MVT::i32,// ->7378 |
| 3990 | /* 7351*/ OPC_MoveParent, |
| 3991 | /* 7352*/ OPC_RecordChild2, // #3 = $exp |
| 3992 | /* 7353*/ OPC_RecordChild3, // #4 = $new |
| 3993 | /* 7354*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 3994 | /* 7356*/ OPC_MoveParent, |
| 3995 | /* 7357*/ OPC_CheckType, MVT::i32, |
| 3996 | /* 7359*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 3997 | /* 7361*/ OPC_EmitMergeInputChains1_0, |
| 3998 | /* 7362*/ OPC_EmitInteger, MVT::i32, 0, |
| 3999 | /* 7365*/ OPC_EmitConvertToTarget, 2, |
| 4000 | /* 7367*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4001 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 4002 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 4003 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 4004 | /* 7378*/ /*SwitchType*/ 27, MVT::i64,// ->7407 |
| 4005 | /* 7380*/ OPC_MoveParent, |
| 4006 | /* 7381*/ OPC_RecordChild2, // #3 = $exp |
| 4007 | /* 7382*/ OPC_RecordChild3, // #4 = $new |
| 4008 | /* 7383*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 4009 | /* 7385*/ OPC_MoveParent, |
| 4010 | /* 7386*/ OPC_CheckType, MVT::i32, |
| 4011 | /* 7388*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4012 | /* 7390*/ OPC_EmitMergeInputChains1_0, |
| 4013 | /* 7391*/ OPC_EmitInteger, MVT::i32, 0, |
| 4014 | /* 7394*/ OPC_EmitConvertToTarget, 2, |
| 4015 | /* 7396*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4016 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 4017 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>>, 255:{ *:[i32] }) - Complexity = 19 |
| 4018 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 4019 | /* 7407*/ 0, // EndSwitchType |
| 4020 | /* 7408*/ /*Scope*/ 84, /*->7493*/ |
| 4021 | /* 7409*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 4022 | /* 7413*/ OPC_MoveChild0, |
| 4023 | /* 7414*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| 4024 | /* 7417*/ OPC_RecordMemRef, |
| 4025 | /* 7418*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 4026 | /* 7419*/ OPC_CheckFoldableChainNode, |
| 4027 | /* 7420*/ OPC_MoveChild1, |
| 4028 | /* 7421*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| 4029 | /* 7424*/ OPC_RecordChild0, // #1 = $addr |
| 4030 | /* 7425*/ OPC_RecordChild1, // #2 = $off |
| 4031 | /* 7426*/ OPC_MoveChild1, |
| 4032 | /* 7427*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 4033 | /* 7430*/ OPC_MoveParent, |
| 4034 | /* 7431*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 4035 | /* 7433*/ OPC_SwitchType /*2 cases */, 27, MVT::i32,// ->7463 |
| 4036 | /* 7436*/ OPC_MoveParent, |
| 4037 | /* 7437*/ OPC_RecordChild2, // #3 = $exp |
| 4038 | /* 7438*/ OPC_RecordChild3, // #4 = $new |
| 4039 | /* 7439*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 4040 | /* 7441*/ OPC_MoveParent, |
| 4041 | /* 7442*/ OPC_CheckType, MVT::i32, |
| 4042 | /* 7444*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4043 | /* 7446*/ OPC_EmitMergeInputChains1_0, |
| 4044 | /* 7447*/ OPC_EmitInteger, MVT::i32, 0, |
| 4045 | /* 7450*/ OPC_EmitConvertToTarget, 2, |
| 4046 | /* 7452*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4047 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 4048 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 4049 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 4050 | /* 7463*/ /*SwitchType*/ 27, MVT::i64,// ->7492 |
| 4051 | /* 7465*/ OPC_MoveParent, |
| 4052 | /* 7466*/ OPC_RecordChild2, // #3 = $exp |
| 4053 | /* 7467*/ OPC_RecordChild3, // #4 = $new |
| 4054 | /* 7468*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 4055 | /* 7470*/ OPC_MoveParent, |
| 4056 | /* 7471*/ OPC_CheckType, MVT::i32, |
| 4057 | /* 7473*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4058 | /* 7475*/ OPC_EmitMergeInputChains1_0, |
| 4059 | /* 7476*/ OPC_EmitInteger, MVT::i32, 0, |
| 4060 | /* 7479*/ OPC_EmitConvertToTarget, 2, |
| 4061 | /* 7481*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4062 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 4063 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>>, 65535:{ *:[i32] }) - Complexity = 19 |
| 4064 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 4065 | /* 7492*/ 0, // EndSwitchType |
| 4066 | /* 7493*/ /*Scope*/ 81, /*->7575*/ |
| 4067 | /* 7494*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 4068 | /* 7497*/ OPC_MoveChild0, |
| 4069 | /* 7498*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4070 | /* 7501*/ OPC_MoveChild0, |
| 4071 | /* 7502*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 4072 | /* 7505*/ OPC_RecordMemRef, |
| 4073 | /* 7506*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 4074 | /* 7507*/ OPC_CheckFoldableChainNode, |
| 4075 | /* 7508*/ OPC_RecordChild1, // #1 = $addr |
| 4076 | /* 7509*/ OPC_Scope, 31, /*->7542*/ // 2 children in Scope |
| 4077 | /* 7511*/ OPC_CheckChild1Type, MVT::i32, |
| 4078 | /* 7513*/ OPC_MoveChild2, |
| 4079 | /* 7514*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4080 | /* 7517*/ OPC_RecordChild0, // #2 = $val |
| 4081 | /* 7518*/ OPC_MoveParent, |
| 4082 | /* 7519*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 4083 | /* 7521*/ OPC_MoveParent, |
| 4084 | /* 7522*/ OPC_MoveParent, |
| 4085 | /* 7523*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4086 | /* 7525*/ OPC_EmitMergeInputChains1_0, |
| 4087 | /* 7526*/ OPC_EmitInteger, MVT::i32, 0, |
| 4088 | /* 7529*/ OPC_EmitInteger, MVT::i32, 0, |
| 4089 | /* 7532*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4090 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4091 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4092 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 4093 | /* 7542*/ /*Scope*/ 31, /*->7574*/ |
| 4094 | /* 7543*/ OPC_CheckChild1Type, MVT::i64, |
| 4095 | /* 7545*/ OPC_MoveChild2, |
| 4096 | /* 7546*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4097 | /* 7549*/ OPC_RecordChild0, // #2 = $val |
| 4098 | /* 7550*/ OPC_MoveParent, |
| 4099 | /* 7551*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 4100 | /* 7553*/ OPC_MoveParent, |
| 4101 | /* 7554*/ OPC_MoveParent, |
| 4102 | /* 7555*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4103 | /* 7557*/ OPC_EmitMergeInputChains1_0, |
| 4104 | /* 7558*/ OPC_EmitInteger, MVT::i32, 0, |
| 4105 | /* 7561*/ OPC_EmitInteger, MVT::i64, 0, |
| 4106 | /* 7564*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4107 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4108 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4109 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 4110 | /* 7574*/ 0, /*End of Scope*/ |
| 4111 | /* 7575*/ /*Scope*/ 82, /*->7658*/ |
| 4112 | /* 7576*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 4113 | /* 7580*/ OPC_MoveChild0, |
| 4114 | /* 7581*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4115 | /* 7584*/ OPC_MoveChild0, |
| 4116 | /* 7585*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 4117 | /* 7588*/ OPC_RecordMemRef, |
| 4118 | /* 7589*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 4119 | /* 7590*/ OPC_CheckFoldableChainNode, |
| 4120 | /* 7591*/ OPC_RecordChild1, // #1 = $addr |
| 4121 | /* 7592*/ OPC_Scope, 31, /*->7625*/ // 2 children in Scope |
| 4122 | /* 7594*/ OPC_CheckChild1Type, MVT::i32, |
| 4123 | /* 7596*/ OPC_MoveChild2, |
| 4124 | /* 7597*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4125 | /* 7600*/ OPC_RecordChild0, // #2 = $val |
| 4126 | /* 7601*/ OPC_MoveParent, |
| 4127 | /* 7602*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 4128 | /* 7604*/ OPC_MoveParent, |
| 4129 | /* 7605*/ OPC_MoveParent, |
| 4130 | /* 7606*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4131 | /* 7608*/ OPC_EmitMergeInputChains1_0, |
| 4132 | /* 7609*/ OPC_EmitInteger, MVT::i32, 0, |
| 4133 | /* 7612*/ OPC_EmitInteger, MVT::i32, 0, |
| 4134 | /* 7615*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4135 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4136 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4137 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 4138 | /* 7625*/ /*Scope*/ 31, /*->7657*/ |
| 4139 | /* 7626*/ OPC_CheckChild1Type, MVT::i64, |
| 4140 | /* 7628*/ OPC_MoveChild2, |
| 4141 | /* 7629*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4142 | /* 7632*/ OPC_RecordChild0, // #2 = $val |
| 4143 | /* 7633*/ OPC_MoveParent, |
| 4144 | /* 7634*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 4145 | /* 7636*/ OPC_MoveParent, |
| 4146 | /* 7637*/ OPC_MoveParent, |
| 4147 | /* 7638*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4148 | /* 7640*/ OPC_EmitMergeInputChains1_0, |
| 4149 | /* 7641*/ OPC_EmitInteger, MVT::i32, 0, |
| 4150 | /* 7644*/ OPC_EmitInteger, MVT::i64, 0, |
| 4151 | /* 7647*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4152 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4153 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4154 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 4155 | /* 7657*/ 0, /*End of Scope*/ |
| 4156 | /* 7658*/ /*Scope*/ 81, /*->7740*/ |
| 4157 | /* 7659*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 4158 | /* 7662*/ OPC_MoveChild0, |
| 4159 | /* 7663*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4160 | /* 7666*/ OPC_MoveChild0, |
| 4161 | /* 7667*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 4162 | /* 7670*/ OPC_RecordMemRef, |
| 4163 | /* 7671*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 4164 | /* 7672*/ OPC_CheckFoldableChainNode, |
| 4165 | /* 7673*/ OPC_RecordChild1, // #1 = $addr |
| 4166 | /* 7674*/ OPC_Scope, 31, /*->7707*/ // 2 children in Scope |
| 4167 | /* 7676*/ OPC_CheckChild1Type, MVT::i32, |
| 4168 | /* 7678*/ OPC_MoveChild2, |
| 4169 | /* 7679*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4170 | /* 7682*/ OPC_RecordChild0, // #2 = $val |
| 4171 | /* 7683*/ OPC_MoveParent, |
| 4172 | /* 7684*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 4173 | /* 7686*/ OPC_MoveParent, |
| 4174 | /* 7687*/ OPC_MoveParent, |
| 4175 | /* 7688*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4176 | /* 7690*/ OPC_EmitMergeInputChains1_0, |
| 4177 | /* 7691*/ OPC_EmitInteger, MVT::i32, 0, |
| 4178 | /* 7694*/ OPC_EmitInteger, MVT::i32, 0, |
| 4179 | /* 7697*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4180 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4181 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4182 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 4183 | /* 7707*/ /*Scope*/ 31, /*->7739*/ |
| 4184 | /* 7708*/ OPC_CheckChild1Type, MVT::i64, |
| 4185 | /* 7710*/ OPC_MoveChild2, |
| 4186 | /* 7711*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4187 | /* 7714*/ OPC_RecordChild0, // #2 = $val |
| 4188 | /* 7715*/ OPC_MoveParent, |
| 4189 | /* 7716*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 4190 | /* 7718*/ OPC_MoveParent, |
| 4191 | /* 7719*/ OPC_MoveParent, |
| 4192 | /* 7720*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4193 | /* 7722*/ OPC_EmitMergeInputChains1_0, |
| 4194 | /* 7723*/ OPC_EmitInteger, MVT::i32, 0, |
| 4195 | /* 7726*/ OPC_EmitInteger, MVT::i64, 0, |
| 4196 | /* 7729*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4197 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4198 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4199 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 4200 | /* 7739*/ 0, /*End of Scope*/ |
| 4201 | /* 7740*/ /*Scope*/ 82, /*->7823*/ |
| 4202 | /* 7741*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 4203 | /* 7745*/ OPC_MoveChild0, |
| 4204 | /* 7746*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4205 | /* 7749*/ OPC_MoveChild0, |
| 4206 | /* 7750*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 4207 | /* 7753*/ OPC_RecordMemRef, |
| 4208 | /* 7754*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 4209 | /* 7755*/ OPC_CheckFoldableChainNode, |
| 4210 | /* 7756*/ OPC_RecordChild1, // #1 = $addr |
| 4211 | /* 7757*/ OPC_Scope, 31, /*->7790*/ // 2 children in Scope |
| 4212 | /* 7759*/ OPC_CheckChild1Type, MVT::i32, |
| 4213 | /* 7761*/ OPC_MoveChild2, |
| 4214 | /* 7762*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4215 | /* 7765*/ OPC_RecordChild0, // #2 = $val |
| 4216 | /* 7766*/ OPC_MoveParent, |
| 4217 | /* 7767*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 4218 | /* 7769*/ OPC_MoveParent, |
| 4219 | /* 7770*/ OPC_MoveParent, |
| 4220 | /* 7771*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4221 | /* 7773*/ OPC_EmitMergeInputChains1_0, |
| 4222 | /* 7774*/ OPC_EmitInteger, MVT::i32, 0, |
| 4223 | /* 7777*/ OPC_EmitInteger, MVT::i32, 0, |
| 4224 | /* 7780*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4225 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4226 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4227 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 4228 | /* 7790*/ /*Scope*/ 31, /*->7822*/ |
| 4229 | /* 7791*/ OPC_CheckChild1Type, MVT::i64, |
| 4230 | /* 7793*/ OPC_MoveChild2, |
| 4231 | /* 7794*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4232 | /* 7797*/ OPC_RecordChild0, // #2 = $val |
| 4233 | /* 7798*/ OPC_MoveParent, |
| 4234 | /* 7799*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 4235 | /* 7801*/ OPC_MoveParent, |
| 4236 | /* 7802*/ OPC_MoveParent, |
| 4237 | /* 7803*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4238 | /* 7805*/ OPC_EmitMergeInputChains1_0, |
| 4239 | /* 7806*/ OPC_EmitInteger, MVT::i32, 0, |
| 4240 | /* 7809*/ OPC_EmitInteger, MVT::i64, 0, |
| 4241 | /* 7812*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4242 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4243 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4244 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 4245 | /* 7822*/ 0, /*End of Scope*/ |
| 4246 | /* 7823*/ /*Scope*/ 81, /*->7905*/ |
| 4247 | /* 7824*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 4248 | /* 7827*/ OPC_MoveChild0, |
| 4249 | /* 7828*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4250 | /* 7831*/ OPC_MoveChild0, |
| 4251 | /* 7832*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 4252 | /* 7835*/ OPC_RecordMemRef, |
| 4253 | /* 7836*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 4254 | /* 7837*/ OPC_CheckFoldableChainNode, |
| 4255 | /* 7838*/ OPC_RecordChild1, // #1 = $addr |
| 4256 | /* 7839*/ OPC_Scope, 31, /*->7872*/ // 2 children in Scope |
| 4257 | /* 7841*/ OPC_CheckChild1Type, MVT::i32, |
| 4258 | /* 7843*/ OPC_MoveChild2, |
| 4259 | /* 7844*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4260 | /* 7847*/ OPC_RecordChild0, // #2 = $val |
| 4261 | /* 7848*/ OPC_MoveParent, |
| 4262 | /* 7849*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 4263 | /* 7851*/ OPC_MoveParent, |
| 4264 | /* 7852*/ OPC_MoveParent, |
| 4265 | /* 7853*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4266 | /* 7855*/ OPC_EmitMergeInputChains1_0, |
| 4267 | /* 7856*/ OPC_EmitInteger, MVT::i32, 0, |
| 4268 | /* 7859*/ OPC_EmitInteger, MVT::i32, 0, |
| 4269 | /* 7862*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4270 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4271 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4272 | // Dst: (ATOMIC_RMW8_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 4273 | /* 7872*/ /*Scope*/ 31, /*->7904*/ |
| 4274 | /* 7873*/ OPC_CheckChild1Type, MVT::i64, |
| 4275 | /* 7875*/ OPC_MoveChild2, |
| 4276 | /* 7876*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4277 | /* 7879*/ OPC_RecordChild0, // #2 = $val |
| 4278 | /* 7880*/ OPC_MoveParent, |
| 4279 | /* 7881*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 4280 | /* 7883*/ OPC_MoveParent, |
| 4281 | /* 7884*/ OPC_MoveParent, |
| 4282 | /* 7885*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4283 | /* 7887*/ OPC_EmitMergeInputChains1_0, |
| 4284 | /* 7888*/ OPC_EmitInteger, MVT::i32, 0, |
| 4285 | /* 7891*/ OPC_EmitInteger, MVT::i64, 0, |
| 4286 | /* 7894*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4287 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4288 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4289 | // Dst: (ATOMIC_RMW8_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 4290 | /* 7904*/ 0, /*End of Scope*/ |
| 4291 | /* 7905*/ /*Scope*/ 82, /*->7988*/ |
| 4292 | /* 7906*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 4293 | /* 7910*/ OPC_MoveChild0, |
| 4294 | /* 7911*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4295 | /* 7914*/ OPC_MoveChild0, |
| 4296 | /* 7915*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 4297 | /* 7918*/ OPC_RecordMemRef, |
| 4298 | /* 7919*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 4299 | /* 7920*/ OPC_CheckFoldableChainNode, |
| 4300 | /* 7921*/ OPC_RecordChild1, // #1 = $addr |
| 4301 | /* 7922*/ OPC_Scope, 31, /*->7955*/ // 2 children in Scope |
| 4302 | /* 7924*/ OPC_CheckChild1Type, MVT::i32, |
| 4303 | /* 7926*/ OPC_MoveChild2, |
| 4304 | /* 7927*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4305 | /* 7930*/ OPC_RecordChild0, // #2 = $val |
| 4306 | /* 7931*/ OPC_MoveParent, |
| 4307 | /* 7932*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 4308 | /* 7934*/ OPC_MoveParent, |
| 4309 | /* 7935*/ OPC_MoveParent, |
| 4310 | /* 7936*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4311 | /* 7938*/ OPC_EmitMergeInputChains1_0, |
| 4312 | /* 7939*/ OPC_EmitInteger, MVT::i32, 0, |
| 4313 | /* 7942*/ OPC_EmitInteger, MVT::i32, 0, |
| 4314 | /* 7945*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4315 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4316 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4317 | // Dst: (ATOMIC_RMW16_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 4318 | /* 7955*/ /*Scope*/ 31, /*->7987*/ |
| 4319 | /* 7956*/ OPC_CheckChild1Type, MVT::i64, |
| 4320 | /* 7958*/ OPC_MoveChild2, |
| 4321 | /* 7959*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4322 | /* 7962*/ OPC_RecordChild0, // #2 = $val |
| 4323 | /* 7963*/ OPC_MoveParent, |
| 4324 | /* 7964*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 4325 | /* 7966*/ OPC_MoveParent, |
| 4326 | /* 7967*/ OPC_MoveParent, |
| 4327 | /* 7968*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4328 | /* 7970*/ OPC_EmitMergeInputChains1_0, |
| 4329 | /* 7971*/ OPC_EmitInteger, MVT::i32, 0, |
| 4330 | /* 7974*/ OPC_EmitInteger, MVT::i64, 0, |
| 4331 | /* 7977*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4332 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4333 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4334 | // Dst: (ATOMIC_RMW16_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 4335 | /* 7987*/ 0, /*End of Scope*/ |
| 4336 | /* 7988*/ /*Scope*/ 81, /*->8070*/ |
| 4337 | /* 7989*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 4338 | /* 7992*/ OPC_MoveChild0, |
| 4339 | /* 7993*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4340 | /* 7996*/ OPC_MoveChild0, |
| 4341 | /* 7997*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 4342 | /* 8000*/ OPC_RecordMemRef, |
| 4343 | /* 8001*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 4344 | /* 8002*/ OPC_CheckFoldableChainNode, |
| 4345 | /* 8003*/ OPC_RecordChild1, // #1 = $addr |
| 4346 | /* 8004*/ OPC_Scope, 31, /*->8037*/ // 2 children in Scope |
| 4347 | /* 8006*/ OPC_CheckChild1Type, MVT::i32, |
| 4348 | /* 8008*/ OPC_MoveChild2, |
| 4349 | /* 8009*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4350 | /* 8012*/ OPC_RecordChild0, // #2 = $val |
| 4351 | /* 8013*/ OPC_MoveParent, |
| 4352 | /* 8014*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 4353 | /* 8016*/ OPC_MoveParent, |
| 4354 | /* 8017*/ OPC_MoveParent, |
| 4355 | /* 8018*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4356 | /* 8020*/ OPC_EmitMergeInputChains1_0, |
| 4357 | /* 8021*/ OPC_EmitInteger, MVT::i32, 0, |
| 4358 | /* 8024*/ OPC_EmitInteger, MVT::i32, 0, |
| 4359 | /* 8027*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4360 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4361 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4362 | // Dst: (ATOMIC_RMW8_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 4363 | /* 8037*/ /*Scope*/ 31, /*->8069*/ |
| 4364 | /* 8038*/ OPC_CheckChild1Type, MVT::i64, |
| 4365 | /* 8040*/ OPC_MoveChild2, |
| 4366 | /* 8041*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4367 | /* 8044*/ OPC_RecordChild0, // #2 = $val |
| 4368 | /* 8045*/ OPC_MoveParent, |
| 4369 | /* 8046*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 4370 | /* 8048*/ OPC_MoveParent, |
| 4371 | /* 8049*/ OPC_MoveParent, |
| 4372 | /* 8050*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4373 | /* 8052*/ OPC_EmitMergeInputChains1_0, |
| 4374 | /* 8053*/ OPC_EmitInteger, MVT::i32, 0, |
| 4375 | /* 8056*/ OPC_EmitInteger, MVT::i64, 0, |
| 4376 | /* 8059*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4377 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4378 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4379 | // Dst: (ATOMIC_RMW8_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 4380 | /* 8069*/ 0, /*End of Scope*/ |
| 4381 | /* 8070*/ /*Scope*/ 82, /*->8153*/ |
| 4382 | /* 8071*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 4383 | /* 8075*/ OPC_MoveChild0, |
| 4384 | /* 8076*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4385 | /* 8079*/ OPC_MoveChild0, |
| 4386 | /* 8080*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 4387 | /* 8083*/ OPC_RecordMemRef, |
| 4388 | /* 8084*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 4389 | /* 8085*/ OPC_CheckFoldableChainNode, |
| 4390 | /* 8086*/ OPC_RecordChild1, // #1 = $addr |
| 4391 | /* 8087*/ OPC_Scope, 31, /*->8120*/ // 2 children in Scope |
| 4392 | /* 8089*/ OPC_CheckChild1Type, MVT::i32, |
| 4393 | /* 8091*/ OPC_MoveChild2, |
| 4394 | /* 8092*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4395 | /* 8095*/ OPC_RecordChild0, // #2 = $val |
| 4396 | /* 8096*/ OPC_MoveParent, |
| 4397 | /* 8097*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 4398 | /* 8099*/ OPC_MoveParent, |
| 4399 | /* 8100*/ OPC_MoveParent, |
| 4400 | /* 8101*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4401 | /* 8103*/ OPC_EmitMergeInputChains1_0, |
| 4402 | /* 8104*/ OPC_EmitInteger, MVT::i32, 0, |
| 4403 | /* 8107*/ OPC_EmitInteger, MVT::i32, 0, |
| 4404 | /* 8110*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4405 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4406 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4407 | // Dst: (ATOMIC_RMW16_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 4408 | /* 8120*/ /*Scope*/ 31, /*->8152*/ |
| 4409 | /* 8121*/ OPC_CheckChild1Type, MVT::i64, |
| 4410 | /* 8123*/ OPC_MoveChild2, |
| 4411 | /* 8124*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4412 | /* 8127*/ OPC_RecordChild0, // #2 = $val |
| 4413 | /* 8128*/ OPC_MoveParent, |
| 4414 | /* 8129*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 4415 | /* 8131*/ OPC_MoveParent, |
| 4416 | /* 8132*/ OPC_MoveParent, |
| 4417 | /* 8133*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4418 | /* 8135*/ OPC_EmitMergeInputChains1_0, |
| 4419 | /* 8136*/ OPC_EmitInteger, MVT::i32, 0, |
| 4420 | /* 8139*/ OPC_EmitInteger, MVT::i64, 0, |
| 4421 | /* 8142*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4422 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4423 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4424 | // Dst: (ATOMIC_RMW16_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 4425 | /* 8152*/ 0, /*End of Scope*/ |
| 4426 | /* 8153*/ /*Scope*/ 81, /*->8235*/ |
| 4427 | /* 8154*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 4428 | /* 8157*/ OPC_MoveChild0, |
| 4429 | /* 8158*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4430 | /* 8161*/ OPC_MoveChild0, |
| 4431 | /* 8162*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 4432 | /* 8165*/ OPC_RecordMemRef, |
| 4433 | /* 8166*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 4434 | /* 8167*/ OPC_CheckFoldableChainNode, |
| 4435 | /* 8168*/ OPC_RecordChild1, // #1 = $addr |
| 4436 | /* 8169*/ OPC_Scope, 31, /*->8202*/ // 2 children in Scope |
| 4437 | /* 8171*/ OPC_CheckChild1Type, MVT::i32, |
| 4438 | /* 8173*/ OPC_MoveChild2, |
| 4439 | /* 8174*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4440 | /* 8177*/ OPC_RecordChild0, // #2 = $val |
| 4441 | /* 8178*/ OPC_MoveParent, |
| 4442 | /* 8179*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 4443 | /* 8181*/ OPC_MoveParent, |
| 4444 | /* 8182*/ OPC_MoveParent, |
| 4445 | /* 8183*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4446 | /* 8185*/ OPC_EmitMergeInputChains1_0, |
| 4447 | /* 8186*/ OPC_EmitInteger, MVT::i32, 0, |
| 4448 | /* 8189*/ OPC_EmitInteger, MVT::i32, 0, |
| 4449 | /* 8192*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4450 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4451 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4452 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 4453 | /* 8202*/ /*Scope*/ 31, /*->8234*/ |
| 4454 | /* 8203*/ OPC_CheckChild1Type, MVT::i64, |
| 4455 | /* 8205*/ OPC_MoveChild2, |
| 4456 | /* 8206*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4457 | /* 8209*/ OPC_RecordChild0, // #2 = $val |
| 4458 | /* 8210*/ OPC_MoveParent, |
| 4459 | /* 8211*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 4460 | /* 8213*/ OPC_MoveParent, |
| 4461 | /* 8214*/ OPC_MoveParent, |
| 4462 | /* 8215*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4463 | /* 8217*/ OPC_EmitMergeInputChains1_0, |
| 4464 | /* 8218*/ OPC_EmitInteger, MVT::i32, 0, |
| 4465 | /* 8221*/ OPC_EmitInteger, MVT::i64, 0, |
| 4466 | /* 8224*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4467 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4468 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4469 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 4470 | /* 8234*/ 0, /*End of Scope*/ |
| 4471 | /* 8235*/ /*Scope*/ 82, /*->8318*/ |
| 4472 | /* 8236*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 4473 | /* 8240*/ OPC_MoveChild0, |
| 4474 | /* 8241*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4475 | /* 8244*/ OPC_MoveChild0, |
| 4476 | /* 8245*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 4477 | /* 8248*/ OPC_RecordMemRef, |
| 4478 | /* 8249*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 4479 | /* 8250*/ OPC_CheckFoldableChainNode, |
| 4480 | /* 8251*/ OPC_RecordChild1, // #1 = $addr |
| 4481 | /* 8252*/ OPC_Scope, 31, /*->8285*/ // 2 children in Scope |
| 4482 | /* 8254*/ OPC_CheckChild1Type, MVT::i32, |
| 4483 | /* 8256*/ OPC_MoveChild2, |
| 4484 | /* 8257*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4485 | /* 8260*/ OPC_RecordChild0, // #2 = $val |
| 4486 | /* 8261*/ OPC_MoveParent, |
| 4487 | /* 8262*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 4488 | /* 8264*/ OPC_MoveParent, |
| 4489 | /* 8265*/ OPC_MoveParent, |
| 4490 | /* 8266*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4491 | /* 8268*/ OPC_EmitMergeInputChains1_0, |
| 4492 | /* 8269*/ OPC_EmitInteger, MVT::i32, 0, |
| 4493 | /* 8272*/ OPC_EmitInteger, MVT::i32, 0, |
| 4494 | /* 8275*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4495 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4496 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4497 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 4498 | /* 8285*/ /*Scope*/ 31, /*->8317*/ |
| 4499 | /* 8286*/ OPC_CheckChild1Type, MVT::i64, |
| 4500 | /* 8288*/ OPC_MoveChild2, |
| 4501 | /* 8289*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4502 | /* 8292*/ OPC_RecordChild0, // #2 = $val |
| 4503 | /* 8293*/ OPC_MoveParent, |
| 4504 | /* 8294*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 4505 | /* 8296*/ OPC_MoveParent, |
| 4506 | /* 8297*/ OPC_MoveParent, |
| 4507 | /* 8298*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4508 | /* 8300*/ OPC_EmitMergeInputChains1_0, |
| 4509 | /* 8301*/ OPC_EmitInteger, MVT::i32, 0, |
| 4510 | /* 8304*/ OPC_EmitInteger, MVT::i64, 0, |
| 4511 | /* 8307*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4512 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4513 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4514 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 4515 | /* 8317*/ 0, /*End of Scope*/ |
| 4516 | /* 8318*/ /*Scope*/ 81, /*->8400*/ |
| 4517 | /* 8319*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 4518 | /* 8322*/ OPC_MoveChild0, |
| 4519 | /* 8323*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4520 | /* 8326*/ OPC_MoveChild0, |
| 4521 | /* 8327*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 4522 | /* 8330*/ OPC_RecordMemRef, |
| 4523 | /* 8331*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 4524 | /* 8332*/ OPC_CheckFoldableChainNode, |
| 4525 | /* 8333*/ OPC_RecordChild1, // #1 = $addr |
| 4526 | /* 8334*/ OPC_Scope, 31, /*->8367*/ // 2 children in Scope |
| 4527 | /* 8336*/ OPC_CheckChild1Type, MVT::i32, |
| 4528 | /* 8338*/ OPC_MoveChild2, |
| 4529 | /* 8339*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4530 | /* 8342*/ OPC_RecordChild0, // #2 = $val |
| 4531 | /* 8343*/ OPC_MoveParent, |
| 4532 | /* 8344*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 4533 | /* 8346*/ OPC_MoveParent, |
| 4534 | /* 8347*/ OPC_MoveParent, |
| 4535 | /* 8348*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4536 | /* 8350*/ OPC_EmitMergeInputChains1_0, |
| 4537 | /* 8351*/ OPC_EmitInteger, MVT::i32, 0, |
| 4538 | /* 8354*/ OPC_EmitInteger, MVT::i32, 0, |
| 4539 | /* 8357*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4540 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4541 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4542 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 4543 | /* 8367*/ /*Scope*/ 31, /*->8399*/ |
| 4544 | /* 8368*/ OPC_CheckChild1Type, MVT::i64, |
| 4545 | /* 8370*/ OPC_MoveChild2, |
| 4546 | /* 8371*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4547 | /* 8374*/ OPC_RecordChild0, // #2 = $val |
| 4548 | /* 8375*/ OPC_MoveParent, |
| 4549 | /* 8376*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 4550 | /* 8378*/ OPC_MoveParent, |
| 4551 | /* 8379*/ OPC_MoveParent, |
| 4552 | /* 8380*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4553 | /* 8382*/ OPC_EmitMergeInputChains1_0, |
| 4554 | /* 8383*/ OPC_EmitInteger, MVT::i32, 0, |
| 4555 | /* 8386*/ OPC_EmitInteger, MVT::i64, 0, |
| 4556 | /* 8389*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4557 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4558 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4559 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 4560 | /* 8399*/ 0, /*End of Scope*/ |
| 4561 | /* 8400*/ /*Scope*/ 82, /*->8483*/ |
| 4562 | /* 8401*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 4563 | /* 8405*/ OPC_MoveChild0, |
| 4564 | /* 8406*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4565 | /* 8409*/ OPC_MoveChild0, |
| 4566 | /* 8410*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 4567 | /* 8413*/ OPC_RecordMemRef, |
| 4568 | /* 8414*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 4569 | /* 8415*/ OPC_CheckFoldableChainNode, |
| 4570 | /* 8416*/ OPC_RecordChild1, // #1 = $addr |
| 4571 | /* 8417*/ OPC_Scope, 31, /*->8450*/ // 2 children in Scope |
| 4572 | /* 8419*/ OPC_CheckChild1Type, MVT::i32, |
| 4573 | /* 8421*/ OPC_MoveChild2, |
| 4574 | /* 8422*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4575 | /* 8425*/ OPC_RecordChild0, // #2 = $val |
| 4576 | /* 8426*/ OPC_MoveParent, |
| 4577 | /* 8427*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 4578 | /* 8429*/ OPC_MoveParent, |
| 4579 | /* 8430*/ OPC_MoveParent, |
| 4580 | /* 8431*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4581 | /* 8433*/ OPC_EmitMergeInputChains1_0, |
| 4582 | /* 8434*/ OPC_EmitInteger, MVT::i32, 0, |
| 4583 | /* 8437*/ OPC_EmitInteger, MVT::i32, 0, |
| 4584 | /* 8440*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4585 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4586 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4587 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 4588 | /* 8450*/ /*Scope*/ 31, /*->8482*/ |
| 4589 | /* 8451*/ OPC_CheckChild1Type, MVT::i64, |
| 4590 | /* 8453*/ OPC_MoveChild2, |
| 4591 | /* 8454*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 4592 | /* 8457*/ OPC_RecordChild0, // #2 = $val |
| 4593 | /* 8458*/ OPC_MoveParent, |
| 4594 | /* 8459*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 4595 | /* 8461*/ OPC_MoveParent, |
| 4596 | /* 8462*/ OPC_MoveParent, |
| 4597 | /* 8463*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 4598 | /* 8465*/ OPC_EmitMergeInputChains1_0, |
| 4599 | /* 8466*/ OPC_EmitInteger, MVT::i32, 0, |
| 4600 | /* 8469*/ OPC_EmitInteger, MVT::i64, 0, |
| 4601 | /* 8472*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4602 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 4603 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4604 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 4605 | /* 8482*/ 0, /*End of Scope*/ |
| 4606 | /* 8483*/ /*Scope*/ 82, /*->8566*/ |
| 4607 | /* 8484*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 4608 | /* 8487*/ OPC_MoveChild0, |
| 4609 | /* 8488*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4610 | /* 8491*/ OPC_MoveChild0, |
| 4611 | /* 8492*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 4612 | /* 8495*/ OPC_RecordMemRef, |
| 4613 | /* 8496*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 4614 | /* 8497*/ OPC_CheckFoldableChainNode, |
| 4615 | /* 8498*/ OPC_RecordChild1, // #1 = $off |
| 4616 | /* 8499*/ OPC_MoveChild1, |
| 4617 | /* 8500*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 4618 | /* 8503*/ OPC_MoveParent, |
| 4619 | /* 8504*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 4620 | /* 8506*/ OPC_MoveParent, |
| 4621 | /* 8507*/ OPC_MoveParent, |
| 4622 | /* 8508*/ OPC_Scope, 27, /*->8537*/ // 2 children in Scope |
| 4623 | /* 8510*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 4624 | /* 8512*/ OPC_EmitMergeInputChains1_0, |
| 4625 | /* 8513*/ OPC_EmitInteger, MVT::i32, 0, |
| 4626 | /* 8516*/ OPC_EmitConvertToTarget, 1, |
| 4627 | /* 8518*/ OPC_EmitInteger, MVT::i32, 0, |
| 4628 | /* 8521*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 4629 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 4630 | /* 8528*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4631 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 4632 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4633 | // Dst: (ATOMIC_LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 4634 | /* 8537*/ /*Scope*/ 27, /*->8565*/ |
| 4635 | /* 8538*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 4636 | /* 8540*/ OPC_EmitMergeInputChains1_0, |
| 4637 | /* 8541*/ OPC_EmitInteger, MVT::i32, 0, |
| 4638 | /* 8544*/ OPC_EmitConvertToTarget, 1, |
| 4639 | /* 8546*/ OPC_EmitInteger, MVT::i64, 0, |
| 4640 | /* 8549*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 4641 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 4642 | /* 8556*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4643 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 4644 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_8>>), 255:{ *:[i64] }) - Complexity = 18 |
| 4645 | // Dst: (ATOMIC_LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 4646 | /* 8565*/ 0, /*End of Scope*/ |
| 4647 | /* 8566*/ /*Scope*/ 83, /*->8650*/ |
| 4648 | /* 8567*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 4649 | /* 8571*/ OPC_MoveChild0, |
| 4650 | /* 8572*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 4651 | /* 8575*/ OPC_MoveChild0, |
| 4652 | /* 8576*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 4653 | /* 8579*/ OPC_RecordMemRef, |
| 4654 | /* 8580*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 4655 | /* 8581*/ OPC_CheckFoldableChainNode, |
| 4656 | /* 8582*/ OPC_RecordChild1, // #1 = $off |
| 4657 | /* 8583*/ OPC_MoveChild1, |
| 4658 | /* 8584*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 4659 | /* 8587*/ OPC_MoveParent, |
| 4660 | /* 8588*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 4661 | /* 8590*/ OPC_MoveParent, |
| 4662 | /* 8591*/ OPC_MoveParent, |
| 4663 | /* 8592*/ OPC_Scope, 27, /*->8621*/ // 2 children in Scope |
| 4664 | /* 8594*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 4665 | /* 8596*/ OPC_EmitMergeInputChains1_0, |
| 4666 | /* 8597*/ OPC_EmitInteger, MVT::i32, 0, |
| 4667 | /* 8600*/ OPC_EmitConvertToTarget, 1, |
| 4668 | /* 8602*/ OPC_EmitInteger, MVT::i32, 0, |
| 4669 | /* 8605*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 4670 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 4671 | /* 8612*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4672 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 4673 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4674 | // Dst: (ATOMIC_LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 4675 | /* 8621*/ /*Scope*/ 27, /*->8649*/ |
| 4676 | /* 8622*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 4677 | /* 8624*/ OPC_EmitMergeInputChains1_0, |
| 4678 | /* 8625*/ OPC_EmitInteger, MVT::i32, 0, |
| 4679 | /* 8628*/ OPC_EmitConvertToTarget, 1, |
| 4680 | /* 8630*/ OPC_EmitInteger, MVT::i64, 0, |
| 4681 | /* 8633*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 4682 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 4683 | /* 8640*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4684 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 4685 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_16>>), 65535:{ *:[i64] }) - Complexity = 18 |
| 4686 | // Dst: (ATOMIC_LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 4687 | /* 8649*/ 0, /*End of Scope*/ |
| 4688 | /* 8650*/ /*Scope*/ 80, /*->8731*/ |
| 4689 | /* 8651*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 4690 | /* 8654*/ OPC_MoveChild0, |
| 4691 | /* 8655*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 4692 | /* 8658*/ OPC_RecordMemRef, |
| 4693 | /* 8659*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 4694 | /* 8660*/ OPC_CheckFoldableChainNode, |
| 4695 | /* 8661*/ OPC_MoveChild1, |
| 4696 | /* 8662*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 4697 | /* 8665*/ OPC_RecordChild0, // #1 = $off |
| 4698 | /* 8666*/ OPC_MoveChild0, |
| 4699 | /* 8667*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 4700 | /* 8670*/ OPC_MoveParent, |
| 4701 | /* 8671*/ OPC_MoveParent, |
| 4702 | /* 8672*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 4703 | /* 8674*/ OPC_MoveParent, |
| 4704 | /* 8675*/ OPC_CheckType, MVT::i32, |
| 4705 | /* 8677*/ OPC_Scope, 25, /*->8704*/ // 2 children in Scope |
| 4706 | /* 8679*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 4707 | /* 8681*/ OPC_EmitMergeInputChains1_0, |
| 4708 | /* 8682*/ OPC_EmitInteger, MVT::i32, 0, |
| 4709 | /* 8685*/ OPC_EmitInteger, MVT::i32, 0, |
| 4710 | /* 8688*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 4711 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 4712 | /* 8695*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4713 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 4714 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 4715 | // Dst: (ATOMIC_LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 4716 | /* 8704*/ /*Scope*/ 25, /*->8730*/ |
| 4717 | /* 8705*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 4718 | /* 8707*/ OPC_EmitMergeInputChains1_0, |
| 4719 | /* 8708*/ OPC_EmitInteger, MVT::i32, 0, |
| 4720 | /* 8711*/ OPC_EmitInteger, MVT::i64, 0, |
| 4721 | /* 8714*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 4722 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 4723 | /* 8721*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4724 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 4725 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 4726 | // Dst: (ATOMIC_LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 4727 | /* 8730*/ 0, /*End of Scope*/ |
| 4728 | /* 8731*/ /*Scope*/ 81, /*->8813*/ |
| 4729 | /* 8732*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 4730 | /* 8736*/ OPC_MoveChild0, |
| 4731 | /* 8737*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 4732 | /* 8740*/ OPC_RecordMemRef, |
| 4733 | /* 8741*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 4734 | /* 8742*/ OPC_CheckFoldableChainNode, |
| 4735 | /* 8743*/ OPC_MoveChild1, |
| 4736 | /* 8744*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 4737 | /* 8747*/ OPC_RecordChild0, // #1 = $off |
| 4738 | /* 8748*/ OPC_MoveChild0, |
| 4739 | /* 8749*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 4740 | /* 8752*/ OPC_MoveParent, |
| 4741 | /* 8753*/ OPC_MoveParent, |
| 4742 | /* 8754*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 4743 | /* 8756*/ OPC_MoveParent, |
| 4744 | /* 8757*/ OPC_CheckType, MVT::i32, |
| 4745 | /* 8759*/ OPC_Scope, 25, /*->8786*/ // 2 children in Scope |
| 4746 | /* 8761*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 4747 | /* 8763*/ OPC_EmitMergeInputChains1_0, |
| 4748 | /* 8764*/ OPC_EmitInteger, MVT::i32, 0, |
| 4749 | /* 8767*/ OPC_EmitInteger, MVT::i32, 0, |
| 4750 | /* 8770*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 4751 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 4752 | /* 8777*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4753 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 4754 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 4755 | // Dst: (ATOMIC_LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 4756 | /* 8786*/ /*Scope*/ 25, /*->8812*/ |
| 4757 | /* 8787*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 4758 | /* 8789*/ OPC_EmitMergeInputChains1_0, |
| 4759 | /* 8790*/ OPC_EmitInteger, MVT::i32, 0, |
| 4760 | /* 8793*/ OPC_EmitInteger, MVT::i64, 0, |
| 4761 | /* 8796*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 4762 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 4763 | /* 8803*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4764 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 4765 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 4766 | // Dst: (ATOMIC_LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 4767 | /* 8812*/ 0, /*End of Scope*/ |
| 4768 | /* 8813*/ /*Scope*/ 83, /*->8897*/ |
| 4769 | /* 8814*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 4770 | /* 8817*/ OPC_MoveChild0, |
| 4771 | /* 8818*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 4772 | /* 8821*/ OPC_RecordMemRef, |
| 4773 | /* 8822*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 4774 | /* 8823*/ OPC_CheckFoldableChainNode, |
| 4775 | /* 8824*/ OPC_MoveChild1, |
| 4776 | /* 8825*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 4777 | /* 8828*/ OPC_RecordChild0, // #1 = $off |
| 4778 | /* 8829*/ OPC_MoveChild0, |
| 4779 | /* 8830*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 4780 | /* 8833*/ OPC_MoveParent, |
| 4781 | /* 8834*/ OPC_MoveParent, |
| 4782 | /* 8835*/ OPC_RecordChild2, // #2 = $val |
| 4783 | /* 8836*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 4784 | /* 8838*/ OPC_MoveParent, |
| 4785 | /* 8839*/ OPC_CheckType, MVT::i32, |
| 4786 | /* 8841*/ OPC_Scope, 26, /*->8869*/ // 2 children in Scope |
| 4787 | /* 8843*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 4788 | /* 8845*/ OPC_EmitMergeInputChains1_0, |
| 4789 | /* 8846*/ OPC_EmitInteger, MVT::i32, 0, |
| 4790 | /* 8849*/ OPC_EmitInteger, MVT::i32, 0, |
| 4791 | /* 8852*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 4792 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 4793 | /* 8859*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4794 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 4795 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 4796 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 4797 | /* 8869*/ /*Scope*/ 26, /*->8896*/ |
| 4798 | /* 8870*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 4799 | /* 8872*/ OPC_EmitMergeInputChains1_0, |
| 4800 | /* 8873*/ OPC_EmitInteger, MVT::i32, 0, |
| 4801 | /* 8876*/ OPC_EmitInteger, MVT::i64, 0, |
| 4802 | /* 8879*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 4803 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 4804 | /* 8886*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4805 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 4806 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 4807 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 4808 | /* 8896*/ 0, /*End of Scope*/ |
| 4809 | /* 8897*/ /*Scope*/ 84, /*->8982*/ |
| 4810 | /* 8898*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 4811 | /* 8902*/ OPC_MoveChild0, |
| 4812 | /* 8903*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 4813 | /* 8906*/ OPC_RecordMemRef, |
| 4814 | /* 8907*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 4815 | /* 8908*/ OPC_CheckFoldableChainNode, |
| 4816 | /* 8909*/ OPC_MoveChild1, |
| 4817 | /* 8910*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 4818 | /* 8913*/ OPC_RecordChild0, // #1 = $off |
| 4819 | /* 8914*/ OPC_MoveChild0, |
| 4820 | /* 8915*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 4821 | /* 8918*/ OPC_MoveParent, |
| 4822 | /* 8919*/ OPC_MoveParent, |
| 4823 | /* 8920*/ OPC_RecordChild2, // #2 = $val |
| 4824 | /* 8921*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 4825 | /* 8923*/ OPC_MoveParent, |
| 4826 | /* 8924*/ OPC_CheckType, MVT::i32, |
| 4827 | /* 8926*/ OPC_Scope, 26, /*->8954*/ // 2 children in Scope |
| 4828 | /* 8928*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 4829 | /* 8930*/ OPC_EmitMergeInputChains1_0, |
| 4830 | /* 8931*/ OPC_EmitInteger, MVT::i32, 0, |
| 4831 | /* 8934*/ OPC_EmitInteger, MVT::i32, 0, |
| 4832 | /* 8937*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 4833 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 4834 | /* 8944*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4835 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 4836 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 4837 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 4838 | /* 8954*/ /*Scope*/ 26, /*->8981*/ |
| 4839 | /* 8955*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 4840 | /* 8957*/ OPC_EmitMergeInputChains1_0, |
| 4841 | /* 8958*/ OPC_EmitInteger, MVT::i32, 0, |
| 4842 | /* 8961*/ OPC_EmitInteger, MVT::i64, 0, |
| 4843 | /* 8964*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 4844 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 4845 | /* 8971*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4846 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 4847 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 4848 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 4849 | /* 8981*/ 0, /*End of Scope*/ |
| 4850 | /* 8982*/ /*Scope*/ 83, /*->9066*/ |
| 4851 | /* 8983*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 4852 | /* 8986*/ OPC_MoveChild0, |
| 4853 | /* 8987*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 4854 | /* 8990*/ OPC_RecordMemRef, |
| 4855 | /* 8991*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 4856 | /* 8992*/ OPC_CheckFoldableChainNode, |
| 4857 | /* 8993*/ OPC_MoveChild1, |
| 4858 | /* 8994*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 4859 | /* 8997*/ OPC_RecordChild0, // #1 = $off |
| 4860 | /* 8998*/ OPC_MoveChild0, |
| 4861 | /* 8999*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 4862 | /* 9002*/ OPC_MoveParent, |
| 4863 | /* 9003*/ OPC_MoveParent, |
| 4864 | /* 9004*/ OPC_RecordChild2, // #2 = $val |
| 4865 | /* 9005*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 4866 | /* 9007*/ OPC_MoveParent, |
| 4867 | /* 9008*/ OPC_CheckType, MVT::i32, |
| 4868 | /* 9010*/ OPC_Scope, 26, /*->9038*/ // 2 children in Scope |
| 4869 | /* 9012*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 4870 | /* 9014*/ OPC_EmitMergeInputChains1_0, |
| 4871 | /* 9015*/ OPC_EmitInteger, MVT::i32, 0, |
| 4872 | /* 9018*/ OPC_EmitInteger, MVT::i32, 0, |
| 4873 | /* 9021*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 4874 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 4875 | /* 9028*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4876 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 4877 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 4878 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 4879 | /* 9038*/ /*Scope*/ 26, /*->9065*/ |
| 4880 | /* 9039*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 4881 | /* 9041*/ OPC_EmitMergeInputChains1_0, |
| 4882 | /* 9042*/ OPC_EmitInteger, MVT::i32, 0, |
| 4883 | /* 9045*/ OPC_EmitInteger, MVT::i64, 0, |
| 4884 | /* 9048*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 4885 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 4886 | /* 9055*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4887 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 4888 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 4889 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 4890 | /* 9065*/ 0, /*End of Scope*/ |
| 4891 | /* 9066*/ /*Scope*/ 84, /*->9151*/ |
| 4892 | /* 9067*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 4893 | /* 9071*/ OPC_MoveChild0, |
| 4894 | /* 9072*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 4895 | /* 9075*/ OPC_RecordMemRef, |
| 4896 | /* 9076*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 4897 | /* 9077*/ OPC_CheckFoldableChainNode, |
| 4898 | /* 9078*/ OPC_MoveChild1, |
| 4899 | /* 9079*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 4900 | /* 9082*/ OPC_RecordChild0, // #1 = $off |
| 4901 | /* 9083*/ OPC_MoveChild0, |
| 4902 | /* 9084*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 4903 | /* 9087*/ OPC_MoveParent, |
| 4904 | /* 9088*/ OPC_MoveParent, |
| 4905 | /* 9089*/ OPC_RecordChild2, // #2 = $val |
| 4906 | /* 9090*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 4907 | /* 9092*/ OPC_MoveParent, |
| 4908 | /* 9093*/ OPC_CheckType, MVT::i32, |
| 4909 | /* 9095*/ OPC_Scope, 26, /*->9123*/ // 2 children in Scope |
| 4910 | /* 9097*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 4911 | /* 9099*/ OPC_EmitMergeInputChains1_0, |
| 4912 | /* 9100*/ OPC_EmitInteger, MVT::i32, 0, |
| 4913 | /* 9103*/ OPC_EmitInteger, MVT::i32, 0, |
| 4914 | /* 9106*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 4915 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 4916 | /* 9113*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4917 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 4918 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 4919 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 4920 | /* 9123*/ /*Scope*/ 26, /*->9150*/ |
| 4921 | /* 9124*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 4922 | /* 9126*/ OPC_EmitMergeInputChains1_0, |
| 4923 | /* 9127*/ OPC_EmitInteger, MVT::i32, 0, |
| 4924 | /* 9130*/ OPC_EmitInteger, MVT::i64, 0, |
| 4925 | /* 9133*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 4926 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 4927 | /* 9140*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4928 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 4929 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 4930 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 4931 | /* 9150*/ 0, /*End of Scope*/ |
| 4932 | /* 9151*/ /*Scope*/ 83, /*->9235*/ |
| 4933 | /* 9152*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 4934 | /* 9155*/ OPC_MoveChild0, |
| 4935 | /* 9156*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 4936 | /* 9159*/ OPC_RecordMemRef, |
| 4937 | /* 9160*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 4938 | /* 9161*/ OPC_CheckFoldableChainNode, |
| 4939 | /* 9162*/ OPC_MoveChild1, |
| 4940 | /* 9163*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 4941 | /* 9166*/ OPC_RecordChild0, // #1 = $off |
| 4942 | /* 9167*/ OPC_MoveChild0, |
| 4943 | /* 9168*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 4944 | /* 9171*/ OPC_MoveParent, |
| 4945 | /* 9172*/ OPC_MoveParent, |
| 4946 | /* 9173*/ OPC_RecordChild2, // #2 = $val |
| 4947 | /* 9174*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 4948 | /* 9176*/ OPC_MoveParent, |
| 4949 | /* 9177*/ OPC_CheckType, MVT::i32, |
| 4950 | /* 9179*/ OPC_Scope, 26, /*->9207*/ // 2 children in Scope |
| 4951 | /* 9181*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 4952 | /* 9183*/ OPC_EmitMergeInputChains1_0, |
| 4953 | /* 9184*/ OPC_EmitInteger, MVT::i32, 0, |
| 4954 | /* 9187*/ OPC_EmitInteger, MVT::i32, 0, |
| 4955 | /* 9190*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 4956 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 4957 | /* 9197*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4958 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 4959 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 4960 | // Dst: (ATOMIC_RMW8_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 4961 | /* 9207*/ /*Scope*/ 26, /*->9234*/ |
| 4962 | /* 9208*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 4963 | /* 9210*/ OPC_EmitMergeInputChains1_0, |
| 4964 | /* 9211*/ OPC_EmitInteger, MVT::i32, 0, |
| 4965 | /* 9214*/ OPC_EmitInteger, MVT::i64, 0, |
| 4966 | /* 9217*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 4967 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 4968 | /* 9224*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 4969 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 4970 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 4971 | // Dst: (ATOMIC_RMW8_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 4972 | /* 9234*/ 0, /*End of Scope*/ |
| 4973 | /* 9235*/ /*Scope*/ 84, /*->9320*/ |
| 4974 | /* 9236*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 4975 | /* 9240*/ OPC_MoveChild0, |
| 4976 | /* 9241*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 4977 | /* 9244*/ OPC_RecordMemRef, |
| 4978 | /* 9245*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 4979 | /* 9246*/ OPC_CheckFoldableChainNode, |
| 4980 | /* 9247*/ OPC_MoveChild1, |
| 4981 | /* 9248*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 4982 | /* 9251*/ OPC_RecordChild0, // #1 = $off |
| 4983 | /* 9252*/ OPC_MoveChild0, |
| 4984 | /* 9253*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 4985 | /* 9256*/ OPC_MoveParent, |
| 4986 | /* 9257*/ OPC_MoveParent, |
| 4987 | /* 9258*/ OPC_RecordChild2, // #2 = $val |
| 4988 | /* 9259*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 4989 | /* 9261*/ OPC_MoveParent, |
| 4990 | /* 9262*/ OPC_CheckType, MVT::i32, |
| 4991 | /* 9264*/ OPC_Scope, 26, /*->9292*/ // 2 children in Scope |
| 4992 | /* 9266*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 4993 | /* 9268*/ OPC_EmitMergeInputChains1_0, |
| 4994 | /* 9269*/ OPC_EmitInteger, MVT::i32, 0, |
| 4995 | /* 9272*/ OPC_EmitInteger, MVT::i32, 0, |
| 4996 | /* 9275*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 4997 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 4998 | /* 9282*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 4999 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5000 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 5001 | // Dst: (ATOMIC_RMW16_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5002 | /* 9292*/ /*Scope*/ 26, /*->9319*/ |
| 5003 | /* 9293*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5004 | /* 9295*/ OPC_EmitMergeInputChains1_0, |
| 5005 | /* 9296*/ OPC_EmitInteger, MVT::i32, 0, |
| 5006 | /* 9299*/ OPC_EmitInteger, MVT::i64, 0, |
| 5007 | /* 9302*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5008 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 5009 | /* 9309*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5010 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5011 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 5012 | // Dst: (ATOMIC_RMW16_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5013 | /* 9319*/ 0, /*End of Scope*/ |
| 5014 | /* 9320*/ /*Scope*/ 83, /*->9404*/ |
| 5015 | /* 9321*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 5016 | /* 9324*/ OPC_MoveChild0, |
| 5017 | /* 9325*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 5018 | /* 9328*/ OPC_RecordMemRef, |
| 5019 | /* 9329*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 5020 | /* 9330*/ OPC_CheckFoldableChainNode, |
| 5021 | /* 9331*/ OPC_MoveChild1, |
| 5022 | /* 9332*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 5023 | /* 9335*/ OPC_RecordChild0, // #1 = $off |
| 5024 | /* 9336*/ OPC_MoveChild0, |
| 5025 | /* 9337*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 5026 | /* 9340*/ OPC_MoveParent, |
| 5027 | /* 9341*/ OPC_MoveParent, |
| 5028 | /* 9342*/ OPC_RecordChild2, // #2 = $val |
| 5029 | /* 9343*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 5030 | /* 9345*/ OPC_MoveParent, |
| 5031 | /* 9346*/ OPC_CheckType, MVT::i32, |
| 5032 | /* 9348*/ OPC_Scope, 26, /*->9376*/ // 2 children in Scope |
| 5033 | /* 9350*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5034 | /* 9352*/ OPC_EmitMergeInputChains1_0, |
| 5035 | /* 9353*/ OPC_EmitInteger, MVT::i32, 0, |
| 5036 | /* 9356*/ OPC_EmitInteger, MVT::i32, 0, |
| 5037 | /* 9359*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5038 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 5039 | /* 9366*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5040 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5041 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 5042 | // Dst: (ATOMIC_RMW8_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5043 | /* 9376*/ /*Scope*/ 26, /*->9403*/ |
| 5044 | /* 9377*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5045 | /* 9379*/ OPC_EmitMergeInputChains1_0, |
| 5046 | /* 9380*/ OPC_EmitInteger, MVT::i32, 0, |
| 5047 | /* 9383*/ OPC_EmitInteger, MVT::i64, 0, |
| 5048 | /* 9386*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5049 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 5050 | /* 9393*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5051 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5052 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 5053 | // Dst: (ATOMIC_RMW8_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5054 | /* 9403*/ 0, /*End of Scope*/ |
| 5055 | /* 9404*/ /*Scope*/ 84, /*->9489*/ |
| 5056 | /* 9405*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 5057 | /* 9409*/ OPC_MoveChild0, |
| 5058 | /* 9410*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 5059 | /* 9413*/ OPC_RecordMemRef, |
| 5060 | /* 9414*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 5061 | /* 9415*/ OPC_CheckFoldableChainNode, |
| 5062 | /* 9416*/ OPC_MoveChild1, |
| 5063 | /* 9417*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 5064 | /* 9420*/ OPC_RecordChild0, // #1 = $off |
| 5065 | /* 9421*/ OPC_MoveChild0, |
| 5066 | /* 9422*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 5067 | /* 9425*/ OPC_MoveParent, |
| 5068 | /* 9426*/ OPC_MoveParent, |
| 5069 | /* 9427*/ OPC_RecordChild2, // #2 = $val |
| 5070 | /* 9428*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 5071 | /* 9430*/ OPC_MoveParent, |
| 5072 | /* 9431*/ OPC_CheckType, MVT::i32, |
| 5073 | /* 9433*/ OPC_Scope, 26, /*->9461*/ // 2 children in Scope |
| 5074 | /* 9435*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5075 | /* 9437*/ OPC_EmitMergeInputChains1_0, |
| 5076 | /* 9438*/ OPC_EmitInteger, MVT::i32, 0, |
| 5077 | /* 9441*/ OPC_EmitInteger, MVT::i32, 0, |
| 5078 | /* 9444*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5079 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 5080 | /* 9451*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5081 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5082 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 5083 | // Dst: (ATOMIC_RMW16_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5084 | /* 9461*/ /*Scope*/ 26, /*->9488*/ |
| 5085 | /* 9462*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5086 | /* 9464*/ OPC_EmitMergeInputChains1_0, |
| 5087 | /* 9465*/ OPC_EmitInteger, MVT::i32, 0, |
| 5088 | /* 9468*/ OPC_EmitInteger, MVT::i64, 0, |
| 5089 | /* 9471*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5090 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 5091 | /* 9478*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5092 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5093 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 5094 | // Dst: (ATOMIC_RMW16_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5095 | /* 9488*/ 0, /*End of Scope*/ |
| 5096 | /* 9489*/ /*Scope*/ 83, /*->9573*/ |
| 5097 | /* 9490*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 5098 | /* 9493*/ OPC_MoveChild0, |
| 5099 | /* 9494*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 5100 | /* 9497*/ OPC_RecordMemRef, |
| 5101 | /* 9498*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 5102 | /* 9499*/ OPC_CheckFoldableChainNode, |
| 5103 | /* 9500*/ OPC_MoveChild1, |
| 5104 | /* 9501*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 5105 | /* 9504*/ OPC_RecordChild0, // #1 = $off |
| 5106 | /* 9505*/ OPC_MoveChild0, |
| 5107 | /* 9506*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 5108 | /* 9509*/ OPC_MoveParent, |
| 5109 | /* 9510*/ OPC_MoveParent, |
| 5110 | /* 9511*/ OPC_RecordChild2, // #2 = $val |
| 5111 | /* 9512*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 5112 | /* 9514*/ OPC_MoveParent, |
| 5113 | /* 9515*/ OPC_CheckType, MVT::i32, |
| 5114 | /* 9517*/ OPC_Scope, 26, /*->9545*/ // 2 children in Scope |
| 5115 | /* 9519*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5116 | /* 9521*/ OPC_EmitMergeInputChains1_0, |
| 5117 | /* 9522*/ OPC_EmitInteger, MVT::i32, 0, |
| 5118 | /* 9525*/ OPC_EmitInteger, MVT::i32, 0, |
| 5119 | /* 9528*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5120 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 5121 | /* 9535*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5122 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5123 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 5124 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5125 | /* 9545*/ /*Scope*/ 26, /*->9572*/ |
| 5126 | /* 9546*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5127 | /* 9548*/ OPC_EmitMergeInputChains1_0, |
| 5128 | /* 9549*/ OPC_EmitInteger, MVT::i32, 0, |
| 5129 | /* 9552*/ OPC_EmitInteger, MVT::i64, 0, |
| 5130 | /* 9555*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5131 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 5132 | /* 9562*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5133 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5134 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 5135 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5136 | /* 9572*/ 0, /*End of Scope*/ |
| 5137 | /* 9573*/ /*Scope*/ 84, /*->9658*/ |
| 5138 | /* 9574*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 5139 | /* 9578*/ OPC_MoveChild0, |
| 5140 | /* 9579*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 5141 | /* 9582*/ OPC_RecordMemRef, |
| 5142 | /* 9583*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 5143 | /* 9584*/ OPC_CheckFoldableChainNode, |
| 5144 | /* 9585*/ OPC_MoveChild1, |
| 5145 | /* 9586*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 5146 | /* 9589*/ OPC_RecordChild0, // #1 = $off |
| 5147 | /* 9590*/ OPC_MoveChild0, |
| 5148 | /* 9591*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 5149 | /* 9594*/ OPC_MoveParent, |
| 5150 | /* 9595*/ OPC_MoveParent, |
| 5151 | /* 9596*/ OPC_RecordChild2, // #2 = $val |
| 5152 | /* 9597*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 5153 | /* 9599*/ OPC_MoveParent, |
| 5154 | /* 9600*/ OPC_CheckType, MVT::i32, |
| 5155 | /* 9602*/ OPC_Scope, 26, /*->9630*/ // 2 children in Scope |
| 5156 | /* 9604*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5157 | /* 9606*/ OPC_EmitMergeInputChains1_0, |
| 5158 | /* 9607*/ OPC_EmitInteger, MVT::i32, 0, |
| 5159 | /* 9610*/ OPC_EmitInteger, MVT::i32, 0, |
| 5160 | /* 9613*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5161 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 5162 | /* 9620*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5163 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5164 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 5165 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5166 | /* 9630*/ /*Scope*/ 26, /*->9657*/ |
| 5167 | /* 9631*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5168 | /* 9633*/ OPC_EmitMergeInputChains1_0, |
| 5169 | /* 9634*/ OPC_EmitInteger, MVT::i32, 0, |
| 5170 | /* 9637*/ OPC_EmitInteger, MVT::i64, 0, |
| 5171 | /* 9640*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5172 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 5173 | /* 9647*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5174 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5175 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 5176 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5177 | /* 9657*/ 0, /*End of Scope*/ |
| 5178 | /* 9658*/ /*Scope*/ 83, /*->9742*/ |
| 5179 | /* 9659*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 5180 | /* 9662*/ OPC_MoveChild0, |
| 5181 | /* 9663*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 5182 | /* 9666*/ OPC_RecordMemRef, |
| 5183 | /* 9667*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 5184 | /* 9668*/ OPC_CheckFoldableChainNode, |
| 5185 | /* 9669*/ OPC_MoveChild1, |
| 5186 | /* 9670*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 5187 | /* 9673*/ OPC_RecordChild0, // #1 = $off |
| 5188 | /* 9674*/ OPC_MoveChild0, |
| 5189 | /* 9675*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 5190 | /* 9678*/ OPC_MoveParent, |
| 5191 | /* 9679*/ OPC_MoveParent, |
| 5192 | /* 9680*/ OPC_RecordChild2, // #2 = $val |
| 5193 | /* 9681*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 5194 | /* 9683*/ OPC_MoveParent, |
| 5195 | /* 9684*/ OPC_CheckType, MVT::i32, |
| 5196 | /* 9686*/ OPC_Scope, 26, /*->9714*/ // 2 children in Scope |
| 5197 | /* 9688*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5198 | /* 9690*/ OPC_EmitMergeInputChains1_0, |
| 5199 | /* 9691*/ OPC_EmitInteger, MVT::i32, 0, |
| 5200 | /* 9694*/ OPC_EmitInteger, MVT::i32, 0, |
| 5201 | /* 9697*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5202 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 5203 | /* 9704*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5204 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5205 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 5206 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5207 | /* 9714*/ /*Scope*/ 26, /*->9741*/ |
| 5208 | /* 9715*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5209 | /* 9717*/ OPC_EmitMergeInputChains1_0, |
| 5210 | /* 9718*/ OPC_EmitInteger, MVT::i32, 0, |
| 5211 | /* 9721*/ OPC_EmitInteger, MVT::i64, 0, |
| 5212 | /* 9724*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5213 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 5214 | /* 9731*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5215 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5216 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 5217 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5218 | /* 9741*/ 0, /*End of Scope*/ |
| 5219 | /* 9742*/ /*Scope*/ 84, /*->9827*/ |
| 5220 | /* 9743*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 5221 | /* 9747*/ OPC_MoveChild0, |
| 5222 | /* 9748*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 5223 | /* 9751*/ OPC_RecordMemRef, |
| 5224 | /* 9752*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 5225 | /* 9753*/ OPC_CheckFoldableChainNode, |
| 5226 | /* 9754*/ OPC_MoveChild1, |
| 5227 | /* 9755*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 5228 | /* 9758*/ OPC_RecordChild0, // #1 = $off |
| 5229 | /* 9759*/ OPC_MoveChild0, |
| 5230 | /* 9760*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 5231 | /* 9763*/ OPC_MoveParent, |
| 5232 | /* 9764*/ OPC_MoveParent, |
| 5233 | /* 9765*/ OPC_RecordChild2, // #2 = $val |
| 5234 | /* 9766*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 5235 | /* 9768*/ OPC_MoveParent, |
| 5236 | /* 9769*/ OPC_CheckType, MVT::i32, |
| 5237 | /* 9771*/ OPC_Scope, 26, /*->9799*/ // 2 children in Scope |
| 5238 | /* 9773*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5239 | /* 9775*/ OPC_EmitMergeInputChains1_0, |
| 5240 | /* 9776*/ OPC_EmitInteger, MVT::i32, 0, |
| 5241 | /* 9779*/ OPC_EmitInteger, MVT::i32, 0, |
| 5242 | /* 9782*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5243 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 5244 | /* 9789*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5245 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5246 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 5247 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5248 | /* 9799*/ /*Scope*/ 26, /*->9826*/ |
| 5249 | /* 9800*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5250 | /* 9802*/ OPC_EmitMergeInputChains1_0, |
| 5251 | /* 9803*/ OPC_EmitInteger, MVT::i32, 0, |
| 5252 | /* 9806*/ OPC_EmitInteger, MVT::i64, 0, |
| 5253 | /* 9809*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5254 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 5255 | /* 9816*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5256 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 5257 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 5258 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5259 | /* 9826*/ 0, /*End of Scope*/ |
| 5260 | /* 9827*/ /*Scope*/ 86, /*->9914*/ |
| 5261 | /* 9828*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 5262 | /* 9831*/ OPC_MoveChild0, |
| 5263 | /* 9832*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| 5264 | /* 9835*/ OPC_RecordMemRef, |
| 5265 | /* 9836*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 5266 | /* 9837*/ OPC_CheckFoldableChainNode, |
| 5267 | /* 9838*/ OPC_MoveChild1, |
| 5268 | /* 9839*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 5269 | /* 9842*/ OPC_RecordChild0, // #1 = $off |
| 5270 | /* 9843*/ OPC_MoveChild0, |
| 5271 | /* 9844*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 5272 | /* 9847*/ OPC_MoveParent, |
| 5273 | /* 9848*/ OPC_MoveParent, |
| 5274 | /* 9849*/ OPC_RecordChild2, // #2 = $exp |
| 5275 | /* 9850*/ OPC_RecordChild3, // #3 = $new |
| 5276 | /* 9851*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 5277 | /* 9853*/ OPC_MoveParent, |
| 5278 | /* 9854*/ OPC_CheckType, MVT::i32, |
| 5279 | /* 9856*/ OPC_Scope, 27, /*->9885*/ // 2 children in Scope |
| 5280 | /* 9858*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5281 | /* 9860*/ OPC_EmitMergeInputChains1_0, |
| 5282 | /* 9861*/ OPC_EmitInteger, MVT::i32, 0, |
| 5283 | /* 9864*/ OPC_EmitInteger, MVT::i32, 0, |
| 5284 | /* 9867*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5285 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 5286 | /* 9874*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5287 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 5288 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 5289 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 5290 | /* 9885*/ /*Scope*/ 27, /*->9913*/ |
| 5291 | /* 9886*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5292 | /* 9888*/ OPC_EmitMergeInputChains1_0, |
| 5293 | /* 9889*/ OPC_EmitInteger, MVT::i32, 0, |
| 5294 | /* 9892*/ OPC_EmitInteger, MVT::i64, 0, |
| 5295 | /* 9895*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5296 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 5297 | /* 9902*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5298 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 5299 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>>, 255:{ *:[i32] }) - Complexity = 18 |
| 5300 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 5301 | /* 9913*/ 0, /*End of Scope*/ |
| 5302 | /* 9914*/ /*Scope*/ 87, /*->10002*/ |
| 5303 | /* 9915*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 5304 | /* 9919*/ OPC_MoveChild0, |
| 5305 | /* 9920*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| 5306 | /* 9923*/ OPC_RecordMemRef, |
| 5307 | /* 9924*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 5308 | /* 9925*/ OPC_CheckFoldableChainNode, |
| 5309 | /* 9926*/ OPC_MoveChild1, |
| 5310 | /* 9927*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 5311 | /* 9930*/ OPC_RecordChild0, // #1 = $off |
| 5312 | /* 9931*/ OPC_MoveChild0, |
| 5313 | /* 9932*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 5314 | /* 9935*/ OPC_MoveParent, |
| 5315 | /* 9936*/ OPC_MoveParent, |
| 5316 | /* 9937*/ OPC_RecordChild2, // #2 = $exp |
| 5317 | /* 9938*/ OPC_RecordChild3, // #3 = $new |
| 5318 | /* 9939*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 5319 | /* 9941*/ OPC_MoveParent, |
| 5320 | /* 9942*/ OPC_CheckType, MVT::i32, |
| 5321 | /* 9944*/ OPC_Scope, 27, /*->9973*/ // 2 children in Scope |
| 5322 | /* 9946*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5323 | /* 9948*/ OPC_EmitMergeInputChains1_0, |
| 5324 | /* 9949*/ OPC_EmitInteger, MVT::i32, 0, |
| 5325 | /* 9952*/ OPC_EmitInteger, MVT::i32, 0, |
| 5326 | /* 9955*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5327 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 5328 | /* 9962*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5329 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 5330 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 5331 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 5332 | /* 9973*/ /*Scope*/ 27, /*->10001*/ |
| 5333 | /* 9974*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 5334 | /* 9976*/ OPC_EmitMergeInputChains1_0, |
| 5335 | /* 9977*/ OPC_EmitInteger, MVT::i32, 0, |
| 5336 | /* 9980*/ OPC_EmitInteger, MVT::i64, 0, |
| 5337 | /* 9983*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5338 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 5339 | /* 9990*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5340 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 5341 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>>, 65535:{ *:[i32] }) - Complexity = 18 |
| 5342 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 5343 | /* 10001*/ 0, /*End of Scope*/ |
| 5344 | /* 10002*/ /*Scope*/ 124, /*->10127*/ |
| 5345 | /* 10003*/ OPC_MoveChild0, |
| 5346 | /* 10004*/ OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN), |
| 5347 | /* 10007*/ OPC_Scope, 58, /*->10067*/ // 2 children in Scope |
| 5348 | /* 10009*/ OPC_CheckChild0Integer, 15|128,67/*8591*/, |
| 5349 | /* 10012*/ OPC_RecordChild1, // #0 = $x |
| 5350 | /* 10013*/ OPC_Scope, 12, /*->10027*/ // 4 children in Scope |
| 5351 | /* 10015*/ OPC_CheckChild1Type, MVT::v16i8, |
| 5352 | /* 10017*/ OPC_MoveParent, |
| 5353 | /* 10018*/ OPC_CheckChild1Integer, 1, |
| 5354 | /* 10020*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I8x16), 0, |
| 5355 | MVT::i32, 1/*#Ops*/, 0, |
| 5356 | // Src: (and:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v16i8] }:$x), 1:{ *:[i32] }) - Complexity = 16 |
| 5357 | // Dst: (ANYTRUE_I8x16:{ *:[i32] } ?:{ *:[v16i8] }:$x) |
| 5358 | /* 10027*/ /*Scope*/ 12, /*->10040*/ |
| 5359 | /* 10028*/ OPC_CheckChild1Type, MVT::v8i16, |
| 5360 | /* 10030*/ OPC_MoveParent, |
| 5361 | /* 10031*/ OPC_CheckChild1Integer, 1, |
| 5362 | /* 10033*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I16x8), 0, |
| 5363 | MVT::i32, 1/*#Ops*/, 0, |
| 5364 | // Src: (and:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v8i16] }:$x), 1:{ *:[i32] }) - Complexity = 16 |
| 5365 | // Dst: (ANYTRUE_I16x8:{ *:[i32] } ?:{ *:[v8i16] }:$x) |
| 5366 | /* 10040*/ /*Scope*/ 12, /*->10053*/ |
| 5367 | /* 10041*/ OPC_CheckChild1Type, MVT::v4i32, |
| 5368 | /* 10043*/ OPC_MoveParent, |
| 5369 | /* 10044*/ OPC_CheckChild1Integer, 1, |
| 5370 | /* 10046*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I32x4), 0, |
| 5371 | MVT::i32, 1/*#Ops*/, 0, |
| 5372 | // Src: (and:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v4i32] }:$x), 1:{ *:[i32] }) - Complexity = 16 |
| 5373 | // Dst: (ANYTRUE_I32x4:{ *:[i32] } ?:{ *:[v4i32] }:$x) |
| 5374 | /* 10053*/ /*Scope*/ 12, /*->10066*/ |
| 5375 | /* 10054*/ OPC_CheckChild1Type, MVT::v2i64, |
| 5376 | /* 10056*/ OPC_MoveParent, |
| 5377 | /* 10057*/ OPC_CheckChild1Integer, 1, |
| 5378 | /* 10059*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I64x2), 0, |
| 5379 | MVT::i32, 1/*#Ops*/, 0, |
| 5380 | // Src: (and:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v2i64] }:$x), 1:{ *:[i32] }) - Complexity = 16 |
| 5381 | // Dst: (ANYTRUE_I64x2:{ *:[i32] } ?:{ *:[v2i64] }:$x) |
| 5382 | /* 10066*/ 0, /*End of Scope*/ |
| 5383 | /* 10067*/ /*Scope*/ 58, /*->10126*/ |
| 5384 | /* 10068*/ OPC_CheckChild0Integer, 14|128,67/*8590*/, |
| 5385 | /* 10071*/ OPC_RecordChild1, // #0 = $x |
| 5386 | /* 10072*/ OPC_Scope, 12, /*->10086*/ // 4 children in Scope |
| 5387 | /* 10074*/ OPC_CheckChild1Type, MVT::v16i8, |
| 5388 | /* 10076*/ OPC_MoveParent, |
| 5389 | /* 10077*/ OPC_CheckChild1Integer, 1, |
| 5390 | /* 10079*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I8x16), 0, |
| 5391 | MVT::i32, 1/*#Ops*/, 0, |
| 5392 | // Src: (and:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v16i8] }:$x), 1:{ *:[i32] }) - Complexity = 16 |
| 5393 | // Dst: (ALLTRUE_I8x16:{ *:[i32] } ?:{ *:[v16i8] }:$x) |
| 5394 | /* 10086*/ /*Scope*/ 12, /*->10099*/ |
| 5395 | /* 10087*/ OPC_CheckChild1Type, MVT::v8i16, |
| 5396 | /* 10089*/ OPC_MoveParent, |
| 5397 | /* 10090*/ OPC_CheckChild1Integer, 1, |
| 5398 | /* 10092*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I16x8), 0, |
| 5399 | MVT::i32, 1/*#Ops*/, 0, |
| 5400 | // Src: (and:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v8i16] }:$x), 1:{ *:[i32] }) - Complexity = 16 |
| 5401 | // Dst: (ALLTRUE_I16x8:{ *:[i32] } ?:{ *:[v8i16] }:$x) |
| 5402 | /* 10099*/ /*Scope*/ 12, /*->10112*/ |
| 5403 | /* 10100*/ OPC_CheckChild1Type, MVT::v4i32, |
| 5404 | /* 10102*/ OPC_MoveParent, |
| 5405 | /* 10103*/ OPC_CheckChild1Integer, 1, |
| 5406 | /* 10105*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I32x4), 0, |
| 5407 | MVT::i32, 1/*#Ops*/, 0, |
| 5408 | // Src: (and:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v4i32] }:$x), 1:{ *:[i32] }) - Complexity = 16 |
| 5409 | // Dst: (ALLTRUE_I32x4:{ *:[i32] } ?:{ *:[v4i32] }:$x) |
| 5410 | /* 10112*/ /*Scope*/ 12, /*->10125*/ |
| 5411 | /* 10113*/ OPC_CheckChild1Type, MVT::v2i64, |
| 5412 | /* 10115*/ OPC_MoveParent, |
| 5413 | /* 10116*/ OPC_CheckChild1Integer, 1, |
| 5414 | /* 10118*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I64x2), 0, |
| 5415 | MVT::i32, 1/*#Ops*/, 0, |
| 5416 | // Src: (and:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v2i64] }:$x), 1:{ *:[i32] }) - Complexity = 16 |
| 5417 | // Dst: (ALLTRUE_I64x2:{ *:[i32] } ?:{ *:[v2i64] }:$x) |
| 5418 | /* 10125*/ 0, /*End of Scope*/ |
| 5419 | /* 10126*/ 0, /*End of Scope*/ |
| 5420 | /* 10127*/ /*Scope*/ 67, /*->10195*/ |
| 5421 | /* 10128*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 5422 | /* 10131*/ OPC_MoveChild0, |
| 5423 | /* 10132*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 5424 | /* 10135*/ OPC_MoveChild0, |
| 5425 | /* 10136*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 5426 | /* 10139*/ OPC_RecordMemRef, |
| 5427 | /* 10140*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 5428 | /* 10141*/ OPC_CheckFoldableChainNode, |
| 5429 | /* 10142*/ OPC_RecordChild1, // #1 = $addr |
| 5430 | /* 10143*/ OPC_Scope, 24, /*->10169*/ // 2 children in Scope |
| 5431 | /* 10145*/ OPC_CheckChild1Type, MVT::i32, |
| 5432 | /* 10147*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 5433 | /* 10149*/ OPC_MoveParent, |
| 5434 | /* 10150*/ OPC_MoveParent, |
| 5435 | /* 10151*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 5436 | /* 10153*/ OPC_EmitMergeInputChains1_0, |
| 5437 | /* 10154*/ OPC_EmitInteger, MVT::i32, 0, |
| 5438 | /* 10157*/ OPC_EmitInteger, MVT::i32, 0, |
| 5439 | /* 10160*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5440 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 5441 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_atomic_load_8>>), 255:{ *:[i64] }) - Complexity = 15 |
| 5442 | // Dst: (ATOMIC_LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 5443 | /* 10169*/ /*Scope*/ 24, /*->10194*/ |
| 5444 | /* 10170*/ OPC_CheckChild1Type, MVT::i64, |
| 5445 | /* 10172*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 5446 | /* 10174*/ OPC_MoveParent, |
| 5447 | /* 10175*/ OPC_MoveParent, |
| 5448 | /* 10176*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 5449 | /* 10178*/ OPC_EmitMergeInputChains1_0, |
| 5450 | /* 10179*/ OPC_EmitInteger, MVT::i32, 0, |
| 5451 | /* 10182*/ OPC_EmitInteger, MVT::i64, 0, |
| 5452 | /* 10185*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5453 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 5454 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_atomic_load_8>>), 255:{ *:[i64] }) - Complexity = 15 |
| 5455 | // Dst: (ATOMIC_LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 5456 | /* 10194*/ 0, /*End of Scope*/ |
| 5457 | /* 10195*/ /*Scope*/ 68, /*->10264*/ |
| 5458 | /* 10196*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 5459 | /* 10200*/ OPC_MoveChild0, |
| 5460 | /* 10201*/ OPC_CheckOpcode, TARGET_VAL(ISD::ANY_EXTEND), |
| 5461 | /* 10204*/ OPC_MoveChild0, |
| 5462 | /* 10205*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 5463 | /* 10208*/ OPC_RecordMemRef, |
| 5464 | /* 10209*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 5465 | /* 10210*/ OPC_CheckFoldableChainNode, |
| 5466 | /* 10211*/ OPC_RecordChild1, // #1 = $addr |
| 5467 | /* 10212*/ OPC_Scope, 24, /*->10238*/ // 2 children in Scope |
| 5468 | /* 10214*/ OPC_CheckChild1Type, MVT::i32, |
| 5469 | /* 10216*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 5470 | /* 10218*/ OPC_MoveParent, |
| 5471 | /* 10219*/ OPC_MoveParent, |
| 5472 | /* 10220*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 5473 | /* 10222*/ OPC_EmitMergeInputChains1_0, |
| 5474 | /* 10223*/ OPC_EmitInteger, MVT::i32, 0, |
| 5475 | /* 10226*/ OPC_EmitInteger, MVT::i32, 0, |
| 5476 | /* 10229*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5477 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 5478 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_atomic_load_16>>), 65535:{ *:[i64] }) - Complexity = 15 |
| 5479 | // Dst: (ATOMIC_LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 5480 | /* 10238*/ /*Scope*/ 24, /*->10263*/ |
| 5481 | /* 10239*/ OPC_CheckChild1Type, MVT::i64, |
| 5482 | /* 10241*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 5483 | /* 10243*/ OPC_MoveParent, |
| 5484 | /* 10244*/ OPC_MoveParent, |
| 5485 | /* 10245*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 5486 | /* 10247*/ OPC_EmitMergeInputChains1_0, |
| 5487 | /* 10248*/ OPC_EmitInteger, MVT::i32, 0, |
| 5488 | /* 10251*/ OPC_EmitInteger, MVT::i64, 0, |
| 5489 | /* 10254*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5490 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 5491 | // Src: (and:{ *:[i64] } (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_atomic_load_16>>), 65535:{ *:[i64] }) - Complexity = 15 |
| 5492 | // Dst: (ATOMIC_LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 5493 | /* 10263*/ 0, /*End of Scope*/ |
| 5494 | /* 10264*/ /*Scope*/ 33, /*->10298*/ |
| 5495 | /* 10265*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 5496 | /* 10268*/ OPC_MoveChild0, |
| 5497 | /* 10269*/ OPC_CheckOpcode, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT), |
| 5498 | /* 10272*/ OPC_RecordChild0, // #0 = $vec |
| 5499 | /* 10273*/ OPC_CheckChild0Type, MVT::v16i8, |
| 5500 | /* 10275*/ OPC_RecordChild1, // #1 = $idx |
| 5501 | /* 10276*/ OPC_MoveChild1, |
| 5502 | /* 10277*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5503 | /* 10280*/ OPC_CheckPredicate, 4, // Predicate_LaneIdx16 |
| 5504 | /* 10282*/ OPC_CheckType, MVT::i32, |
| 5505 | /* 10284*/ OPC_MoveParent, |
| 5506 | /* 10285*/ OPC_MoveParent, |
| 5507 | /* 10286*/ OPC_CheckType, MVT::i32, |
| 5508 | /* 10288*/ OPC_EmitConvertToTarget, 1, |
| 5509 | /* 10290*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I8x16_u), 0, |
| 5510 | MVT::i32, 2/*#Ops*/, 0, 2, |
| 5511 | // Src: (and:{ *:[i32] } (vector_extract:{ *:[i32] } V128:{ *:[v16i8] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx16>>:$idx), 255:{ *:[i32] }) - Complexity = 15 |
| 5512 | // Dst: (EXTRACT_LANE_I8x16_u:{ *:[i32] } ?:{ *:[v16i8] }:$vec, (imm:{ *:[i32] }):$idx) |
| 5513 | /* 10298*/ /*Scope*/ 34, /*->10333*/ |
| 5514 | /* 10299*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 5515 | /* 10303*/ OPC_MoveChild0, |
| 5516 | /* 10304*/ OPC_CheckOpcode, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT), |
| 5517 | /* 10307*/ OPC_RecordChild0, // #0 = $vec |
| 5518 | /* 10308*/ OPC_CheckChild0Type, MVT::v8i16, |
| 5519 | /* 10310*/ OPC_RecordChild1, // #1 = $idx |
| 5520 | /* 10311*/ OPC_MoveChild1, |
| 5521 | /* 10312*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5522 | /* 10315*/ OPC_CheckPredicate, 5, // Predicate_LaneIdx8 |
| 5523 | /* 10317*/ OPC_CheckType, MVT::i32, |
| 5524 | /* 10319*/ OPC_MoveParent, |
| 5525 | /* 10320*/ OPC_MoveParent, |
| 5526 | /* 10321*/ OPC_CheckType, MVT::i32, |
| 5527 | /* 10323*/ OPC_EmitConvertToTarget, 1, |
| 5528 | /* 10325*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I16x8_u), 0, |
| 5529 | MVT::i32, 2/*#Ops*/, 0, 2, |
| 5530 | // Src: (and:{ *:[i32] } (vector_extract:{ *:[i32] } V128:{ *:[v8i16] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx8>>:$idx), 65535:{ *:[i32] }) - Complexity = 15 |
| 5531 | // Dst: (EXTRACT_LANE_I16x8_u:{ *:[i32] } ?:{ *:[v8i16] }:$vec, (imm:{ *:[i32] }):$idx) |
| 5532 | /* 10333*/ /*Scope*/ 79, /*->10413*/ |
| 5533 | /* 10334*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 5534 | /* 10337*/ OPC_MoveChild0, |
| 5535 | /* 10338*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 5536 | /* 10341*/ OPC_RecordMemRef, |
| 5537 | /* 10342*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 5538 | /* 10343*/ OPC_CheckFoldableChainNode, |
| 5539 | /* 10344*/ OPC_RecordChild1, // #1 = $off |
| 5540 | /* 10345*/ OPC_MoveChild1, |
| 5541 | /* 10346*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5542 | /* 10349*/ OPC_MoveParent, |
| 5543 | /* 10350*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 5544 | /* 10352*/ OPC_MoveParent, |
| 5545 | /* 10353*/ OPC_CheckType, MVT::i32, |
| 5546 | /* 10355*/ OPC_Scope, 27, /*->10384*/ // 2 children in Scope |
| 5547 | /* 10357*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 5548 | /* 10359*/ OPC_EmitMergeInputChains1_0, |
| 5549 | /* 10360*/ OPC_EmitInteger, MVT::i32, 0, |
| 5550 | /* 10363*/ OPC_EmitConvertToTarget, 1, |
| 5551 | /* 10365*/ OPC_EmitInteger, MVT::i32, 0, |
| 5552 | /* 10368*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5553 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 5554 | /* 10375*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5555 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 5556 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 5557 | // Dst: (ATOMIC_LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 5558 | /* 10384*/ /*Scope*/ 27, /*->10412*/ |
| 5559 | /* 10385*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 5560 | /* 10387*/ OPC_EmitMergeInputChains1_0, |
| 5561 | /* 10388*/ OPC_EmitInteger, MVT::i32, 0, |
| 5562 | /* 10391*/ OPC_EmitConvertToTarget, 1, |
| 5563 | /* 10393*/ OPC_EmitInteger, MVT::i64, 0, |
| 5564 | /* 10396*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5565 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 5566 | /* 10403*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5567 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 5568 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 5569 | // Dst: (ATOMIC_LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 5570 | /* 10412*/ 0, /*End of Scope*/ |
| 5571 | /* 10413*/ /*Scope*/ 80, /*->10494*/ |
| 5572 | /* 10414*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 5573 | /* 10418*/ OPC_MoveChild0, |
| 5574 | /* 10419*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 5575 | /* 10422*/ OPC_RecordMemRef, |
| 5576 | /* 10423*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 5577 | /* 10424*/ OPC_CheckFoldableChainNode, |
| 5578 | /* 10425*/ OPC_RecordChild1, // #1 = $off |
| 5579 | /* 10426*/ OPC_MoveChild1, |
| 5580 | /* 10427*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5581 | /* 10430*/ OPC_MoveParent, |
| 5582 | /* 10431*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 5583 | /* 10433*/ OPC_MoveParent, |
| 5584 | /* 10434*/ OPC_CheckType, MVT::i32, |
| 5585 | /* 10436*/ OPC_Scope, 27, /*->10465*/ // 2 children in Scope |
| 5586 | /* 10438*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 5587 | /* 10440*/ OPC_EmitMergeInputChains1_0, |
| 5588 | /* 10441*/ OPC_EmitInteger, MVT::i32, 0, |
| 5589 | /* 10444*/ OPC_EmitConvertToTarget, 1, |
| 5590 | /* 10446*/ OPC_EmitInteger, MVT::i32, 0, |
| 5591 | /* 10449*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5592 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 5593 | /* 10456*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5594 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 5595 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 5596 | // Dst: (ATOMIC_LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 5597 | /* 10465*/ /*Scope*/ 27, /*->10493*/ |
| 5598 | /* 10466*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 5599 | /* 10468*/ OPC_EmitMergeInputChains1_0, |
| 5600 | /* 10469*/ OPC_EmitInteger, MVT::i32, 0, |
| 5601 | /* 10472*/ OPC_EmitConvertToTarget, 1, |
| 5602 | /* 10474*/ OPC_EmitInteger, MVT::i64, 0, |
| 5603 | /* 10477*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5604 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 5605 | /* 10484*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5606 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 5607 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 5608 | // Dst: (ATOMIC_LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 5609 | /* 10493*/ 0, /*End of Scope*/ |
| 5610 | /* 10494*/ /*Scope*/ 82, /*->10577*/ |
| 5611 | /* 10495*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 5612 | /* 10498*/ OPC_MoveChild0, |
| 5613 | /* 10499*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 5614 | /* 10502*/ OPC_RecordMemRef, |
| 5615 | /* 10503*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 5616 | /* 10504*/ OPC_CheckFoldableChainNode, |
| 5617 | /* 10505*/ OPC_RecordChild1, // #1 = $off |
| 5618 | /* 10506*/ OPC_MoveChild1, |
| 5619 | /* 10507*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5620 | /* 10510*/ OPC_MoveParent, |
| 5621 | /* 10511*/ OPC_RecordChild2, // #2 = $val |
| 5622 | /* 10512*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 5623 | /* 10514*/ OPC_MoveParent, |
| 5624 | /* 10515*/ OPC_CheckType, MVT::i32, |
| 5625 | /* 10517*/ OPC_Scope, 28, /*->10547*/ // 2 children in Scope |
| 5626 | /* 10519*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5627 | /* 10521*/ OPC_EmitMergeInputChains1_0, |
| 5628 | /* 10522*/ OPC_EmitInteger, MVT::i32, 0, |
| 5629 | /* 10525*/ OPC_EmitConvertToTarget, 1, |
| 5630 | /* 10527*/ OPC_EmitInteger, MVT::i32, 0, |
| 5631 | /* 10530*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5632 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 5633 | /* 10537*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5634 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5635 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 5636 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5637 | /* 10547*/ /*Scope*/ 28, /*->10576*/ |
| 5638 | /* 10548*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5639 | /* 10550*/ OPC_EmitMergeInputChains1_0, |
| 5640 | /* 10551*/ OPC_EmitInteger, MVT::i32, 0, |
| 5641 | /* 10554*/ OPC_EmitConvertToTarget, 1, |
| 5642 | /* 10556*/ OPC_EmitInteger, MVT::i64, 0, |
| 5643 | /* 10559*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5644 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 5645 | /* 10566*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5646 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5647 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 5648 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5649 | /* 10576*/ 0, /*End of Scope*/ |
| 5650 | /* 10577*/ /*Scope*/ 83, /*->10661*/ |
| 5651 | /* 10578*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 5652 | /* 10582*/ OPC_MoveChild0, |
| 5653 | /* 10583*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 5654 | /* 10586*/ OPC_RecordMemRef, |
| 5655 | /* 10587*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 5656 | /* 10588*/ OPC_CheckFoldableChainNode, |
| 5657 | /* 10589*/ OPC_RecordChild1, // #1 = $off |
| 5658 | /* 10590*/ OPC_MoveChild1, |
| 5659 | /* 10591*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5660 | /* 10594*/ OPC_MoveParent, |
| 5661 | /* 10595*/ OPC_RecordChild2, // #2 = $val |
| 5662 | /* 10596*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 5663 | /* 10598*/ OPC_MoveParent, |
| 5664 | /* 10599*/ OPC_CheckType, MVT::i32, |
| 5665 | /* 10601*/ OPC_Scope, 28, /*->10631*/ // 2 children in Scope |
| 5666 | /* 10603*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5667 | /* 10605*/ OPC_EmitMergeInputChains1_0, |
| 5668 | /* 10606*/ OPC_EmitInteger, MVT::i32, 0, |
| 5669 | /* 10609*/ OPC_EmitConvertToTarget, 1, |
| 5670 | /* 10611*/ OPC_EmitInteger, MVT::i32, 0, |
| 5671 | /* 10614*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5672 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 5673 | /* 10621*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5674 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5675 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 5676 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5677 | /* 10631*/ /*Scope*/ 28, /*->10660*/ |
| 5678 | /* 10632*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5679 | /* 10634*/ OPC_EmitMergeInputChains1_0, |
| 5680 | /* 10635*/ OPC_EmitInteger, MVT::i32, 0, |
| 5681 | /* 10638*/ OPC_EmitConvertToTarget, 1, |
| 5682 | /* 10640*/ OPC_EmitInteger, MVT::i64, 0, |
| 5683 | /* 10643*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5684 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 5685 | /* 10650*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5686 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5687 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 5688 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5689 | /* 10660*/ 0, /*End of Scope*/ |
| 5690 | /* 10661*/ /*Scope*/ 82, /*->10744*/ |
| 5691 | /* 10662*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 5692 | /* 10665*/ OPC_MoveChild0, |
| 5693 | /* 10666*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 5694 | /* 10669*/ OPC_RecordMemRef, |
| 5695 | /* 10670*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 5696 | /* 10671*/ OPC_CheckFoldableChainNode, |
| 5697 | /* 10672*/ OPC_RecordChild1, // #1 = $off |
| 5698 | /* 10673*/ OPC_MoveChild1, |
| 5699 | /* 10674*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5700 | /* 10677*/ OPC_MoveParent, |
| 5701 | /* 10678*/ OPC_RecordChild2, // #2 = $val |
| 5702 | /* 10679*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 5703 | /* 10681*/ OPC_MoveParent, |
| 5704 | /* 10682*/ OPC_CheckType, MVT::i32, |
| 5705 | /* 10684*/ OPC_Scope, 28, /*->10714*/ // 2 children in Scope |
| 5706 | /* 10686*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5707 | /* 10688*/ OPC_EmitMergeInputChains1_0, |
| 5708 | /* 10689*/ OPC_EmitInteger, MVT::i32, 0, |
| 5709 | /* 10692*/ OPC_EmitConvertToTarget, 1, |
| 5710 | /* 10694*/ OPC_EmitInteger, MVT::i32, 0, |
| 5711 | /* 10697*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5712 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 5713 | /* 10704*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5714 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5715 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 5716 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5717 | /* 10714*/ /*Scope*/ 28, /*->10743*/ |
| 5718 | /* 10715*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5719 | /* 10717*/ OPC_EmitMergeInputChains1_0, |
| 5720 | /* 10718*/ OPC_EmitInteger, MVT::i32, 0, |
| 5721 | /* 10721*/ OPC_EmitConvertToTarget, 1, |
| 5722 | /* 10723*/ OPC_EmitInteger, MVT::i64, 0, |
| 5723 | /* 10726*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5724 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 5725 | /* 10733*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5726 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5727 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 5728 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5729 | /* 10743*/ 0, /*End of Scope*/ |
| 5730 | /* 10744*/ /*Scope*/ 83, /*->10828*/ |
| 5731 | /* 10745*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 5732 | /* 10749*/ OPC_MoveChild0, |
| 5733 | /* 10750*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 5734 | /* 10753*/ OPC_RecordMemRef, |
| 5735 | /* 10754*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 5736 | /* 10755*/ OPC_CheckFoldableChainNode, |
| 5737 | /* 10756*/ OPC_RecordChild1, // #1 = $off |
| 5738 | /* 10757*/ OPC_MoveChild1, |
| 5739 | /* 10758*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5740 | /* 10761*/ OPC_MoveParent, |
| 5741 | /* 10762*/ OPC_RecordChild2, // #2 = $val |
| 5742 | /* 10763*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 5743 | /* 10765*/ OPC_MoveParent, |
| 5744 | /* 10766*/ OPC_CheckType, MVT::i32, |
| 5745 | /* 10768*/ OPC_Scope, 28, /*->10798*/ // 2 children in Scope |
| 5746 | /* 10770*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5747 | /* 10772*/ OPC_EmitMergeInputChains1_0, |
| 5748 | /* 10773*/ OPC_EmitInteger, MVT::i32, 0, |
| 5749 | /* 10776*/ OPC_EmitConvertToTarget, 1, |
| 5750 | /* 10778*/ OPC_EmitInteger, MVT::i32, 0, |
| 5751 | /* 10781*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5752 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 5753 | /* 10788*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5754 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5755 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 5756 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5757 | /* 10798*/ /*Scope*/ 28, /*->10827*/ |
| 5758 | /* 10799*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5759 | /* 10801*/ OPC_EmitMergeInputChains1_0, |
| 5760 | /* 10802*/ OPC_EmitInteger, MVT::i32, 0, |
| 5761 | /* 10805*/ OPC_EmitConvertToTarget, 1, |
| 5762 | /* 10807*/ OPC_EmitInteger, MVT::i64, 0, |
| 5763 | /* 10810*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5764 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 5765 | /* 10817*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5766 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5767 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 5768 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5769 | /* 10827*/ 0, /*End of Scope*/ |
| 5770 | /* 10828*/ /*Scope*/ 82, /*->10911*/ |
| 5771 | /* 10829*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 5772 | /* 10832*/ OPC_MoveChild0, |
| 5773 | /* 10833*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 5774 | /* 10836*/ OPC_RecordMemRef, |
| 5775 | /* 10837*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 5776 | /* 10838*/ OPC_CheckFoldableChainNode, |
| 5777 | /* 10839*/ OPC_RecordChild1, // #1 = $off |
| 5778 | /* 10840*/ OPC_MoveChild1, |
| 5779 | /* 10841*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5780 | /* 10844*/ OPC_MoveParent, |
| 5781 | /* 10845*/ OPC_RecordChild2, // #2 = $val |
| 5782 | /* 10846*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 5783 | /* 10848*/ OPC_MoveParent, |
| 5784 | /* 10849*/ OPC_CheckType, MVT::i32, |
| 5785 | /* 10851*/ OPC_Scope, 28, /*->10881*/ // 2 children in Scope |
| 5786 | /* 10853*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5787 | /* 10855*/ OPC_EmitMergeInputChains1_0, |
| 5788 | /* 10856*/ OPC_EmitInteger, MVT::i32, 0, |
| 5789 | /* 10859*/ OPC_EmitConvertToTarget, 1, |
| 5790 | /* 10861*/ OPC_EmitInteger, MVT::i32, 0, |
| 5791 | /* 10864*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5792 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 5793 | /* 10871*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5794 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5795 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 5796 | // Dst: (ATOMIC_RMW8_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5797 | /* 10881*/ /*Scope*/ 28, /*->10910*/ |
| 5798 | /* 10882*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5799 | /* 10884*/ OPC_EmitMergeInputChains1_0, |
| 5800 | /* 10885*/ OPC_EmitInteger, MVT::i32, 0, |
| 5801 | /* 10888*/ OPC_EmitConvertToTarget, 1, |
| 5802 | /* 10890*/ OPC_EmitInteger, MVT::i64, 0, |
| 5803 | /* 10893*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5804 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 5805 | /* 10900*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5806 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5807 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 5808 | // Dst: (ATOMIC_RMW8_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5809 | /* 10910*/ 0, /*End of Scope*/ |
| 5810 | /* 10911*/ /*Scope*/ 83, /*->10995*/ |
| 5811 | /* 10912*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 5812 | /* 10916*/ OPC_MoveChild0, |
| 5813 | /* 10917*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 5814 | /* 10920*/ OPC_RecordMemRef, |
| 5815 | /* 10921*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 5816 | /* 10922*/ OPC_CheckFoldableChainNode, |
| 5817 | /* 10923*/ OPC_RecordChild1, // #1 = $off |
| 5818 | /* 10924*/ OPC_MoveChild1, |
| 5819 | /* 10925*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5820 | /* 10928*/ OPC_MoveParent, |
| 5821 | /* 10929*/ OPC_RecordChild2, // #2 = $val |
| 5822 | /* 10930*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 5823 | /* 10932*/ OPC_MoveParent, |
| 5824 | /* 10933*/ OPC_CheckType, MVT::i32, |
| 5825 | /* 10935*/ OPC_Scope, 28, /*->10965*/ // 2 children in Scope |
| 5826 | /* 10937*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5827 | /* 10939*/ OPC_EmitMergeInputChains1_0, |
| 5828 | /* 10940*/ OPC_EmitInteger, MVT::i32, 0, |
| 5829 | /* 10943*/ OPC_EmitConvertToTarget, 1, |
| 5830 | /* 10945*/ OPC_EmitInteger, MVT::i32, 0, |
| 5831 | /* 10948*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5832 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 5833 | /* 10955*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5834 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5835 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 5836 | // Dst: (ATOMIC_RMW16_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5837 | /* 10965*/ /*Scope*/ 28, /*->10994*/ |
| 5838 | /* 10966*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5839 | /* 10968*/ OPC_EmitMergeInputChains1_0, |
| 5840 | /* 10969*/ OPC_EmitInteger, MVT::i32, 0, |
| 5841 | /* 10972*/ OPC_EmitConvertToTarget, 1, |
| 5842 | /* 10974*/ OPC_EmitInteger, MVT::i64, 0, |
| 5843 | /* 10977*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5844 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 5845 | /* 10984*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5846 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5847 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 5848 | // Dst: (ATOMIC_RMW16_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5849 | /* 10994*/ 0, /*End of Scope*/ |
| 5850 | /* 10995*/ /*Scope*/ 82, /*->11078*/ |
| 5851 | /* 10996*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 5852 | /* 10999*/ OPC_MoveChild0, |
| 5853 | /* 11000*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 5854 | /* 11003*/ OPC_RecordMemRef, |
| 5855 | /* 11004*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 5856 | /* 11005*/ OPC_CheckFoldableChainNode, |
| 5857 | /* 11006*/ OPC_RecordChild1, // #1 = $off |
| 5858 | /* 11007*/ OPC_MoveChild1, |
| 5859 | /* 11008*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5860 | /* 11011*/ OPC_MoveParent, |
| 5861 | /* 11012*/ OPC_RecordChild2, // #2 = $val |
| 5862 | /* 11013*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 5863 | /* 11015*/ OPC_MoveParent, |
| 5864 | /* 11016*/ OPC_CheckType, MVT::i32, |
| 5865 | /* 11018*/ OPC_Scope, 28, /*->11048*/ // 2 children in Scope |
| 5866 | /* 11020*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5867 | /* 11022*/ OPC_EmitMergeInputChains1_0, |
| 5868 | /* 11023*/ OPC_EmitInteger, MVT::i32, 0, |
| 5869 | /* 11026*/ OPC_EmitConvertToTarget, 1, |
| 5870 | /* 11028*/ OPC_EmitInteger, MVT::i32, 0, |
| 5871 | /* 11031*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5872 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 5873 | /* 11038*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5874 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5875 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 5876 | // Dst: (ATOMIC_RMW8_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5877 | /* 11048*/ /*Scope*/ 28, /*->11077*/ |
| 5878 | /* 11049*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5879 | /* 11051*/ OPC_EmitMergeInputChains1_0, |
| 5880 | /* 11052*/ OPC_EmitInteger, MVT::i32, 0, |
| 5881 | /* 11055*/ OPC_EmitConvertToTarget, 1, |
| 5882 | /* 11057*/ OPC_EmitInteger, MVT::i64, 0, |
| 5883 | /* 11060*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5884 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 5885 | /* 11067*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5886 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5887 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 5888 | // Dst: (ATOMIC_RMW8_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5889 | /* 11077*/ 0, /*End of Scope*/ |
| 5890 | /* 11078*/ /*Scope*/ 83, /*->11162*/ |
| 5891 | /* 11079*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 5892 | /* 11083*/ OPC_MoveChild0, |
| 5893 | /* 11084*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 5894 | /* 11087*/ OPC_RecordMemRef, |
| 5895 | /* 11088*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 5896 | /* 11089*/ OPC_CheckFoldableChainNode, |
| 5897 | /* 11090*/ OPC_RecordChild1, // #1 = $off |
| 5898 | /* 11091*/ OPC_MoveChild1, |
| 5899 | /* 11092*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5900 | /* 11095*/ OPC_MoveParent, |
| 5901 | /* 11096*/ OPC_RecordChild2, // #2 = $val |
| 5902 | /* 11097*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 5903 | /* 11099*/ OPC_MoveParent, |
| 5904 | /* 11100*/ OPC_CheckType, MVT::i32, |
| 5905 | /* 11102*/ OPC_Scope, 28, /*->11132*/ // 2 children in Scope |
| 5906 | /* 11104*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5907 | /* 11106*/ OPC_EmitMergeInputChains1_0, |
| 5908 | /* 11107*/ OPC_EmitInteger, MVT::i32, 0, |
| 5909 | /* 11110*/ OPC_EmitConvertToTarget, 1, |
| 5910 | /* 11112*/ OPC_EmitInteger, MVT::i32, 0, |
| 5911 | /* 11115*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5912 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 5913 | /* 11122*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5914 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5915 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 5916 | // Dst: (ATOMIC_RMW16_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5917 | /* 11132*/ /*Scope*/ 28, /*->11161*/ |
| 5918 | /* 11133*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5919 | /* 11135*/ OPC_EmitMergeInputChains1_0, |
| 5920 | /* 11136*/ OPC_EmitInteger, MVT::i32, 0, |
| 5921 | /* 11139*/ OPC_EmitConvertToTarget, 1, |
| 5922 | /* 11141*/ OPC_EmitInteger, MVT::i64, 0, |
| 5923 | /* 11144*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5924 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 5925 | /* 11151*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5926 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5927 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 5928 | // Dst: (ATOMIC_RMW16_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5929 | /* 11161*/ 0, /*End of Scope*/ |
| 5930 | /* 11162*/ /*Scope*/ 82, /*->11245*/ |
| 5931 | /* 11163*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 5932 | /* 11166*/ OPC_MoveChild0, |
| 5933 | /* 11167*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 5934 | /* 11170*/ OPC_RecordMemRef, |
| 5935 | /* 11171*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 5936 | /* 11172*/ OPC_CheckFoldableChainNode, |
| 5937 | /* 11173*/ OPC_RecordChild1, // #1 = $off |
| 5938 | /* 11174*/ OPC_MoveChild1, |
| 5939 | /* 11175*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5940 | /* 11178*/ OPC_MoveParent, |
| 5941 | /* 11179*/ OPC_RecordChild2, // #2 = $val |
| 5942 | /* 11180*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 5943 | /* 11182*/ OPC_MoveParent, |
| 5944 | /* 11183*/ OPC_CheckType, MVT::i32, |
| 5945 | /* 11185*/ OPC_Scope, 28, /*->11215*/ // 2 children in Scope |
| 5946 | /* 11187*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5947 | /* 11189*/ OPC_EmitMergeInputChains1_0, |
| 5948 | /* 11190*/ OPC_EmitInteger, MVT::i32, 0, |
| 5949 | /* 11193*/ OPC_EmitConvertToTarget, 1, |
| 5950 | /* 11195*/ OPC_EmitInteger, MVT::i32, 0, |
| 5951 | /* 11198*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5952 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 5953 | /* 11205*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5954 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5955 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 5956 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5957 | /* 11215*/ /*Scope*/ 28, /*->11244*/ |
| 5958 | /* 11216*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5959 | /* 11218*/ OPC_EmitMergeInputChains1_0, |
| 5960 | /* 11219*/ OPC_EmitInteger, MVT::i32, 0, |
| 5961 | /* 11222*/ OPC_EmitConvertToTarget, 1, |
| 5962 | /* 11224*/ OPC_EmitInteger, MVT::i64, 0, |
| 5963 | /* 11227*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 5964 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 5965 | /* 11234*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 5966 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5967 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 5968 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 5969 | /* 11244*/ 0, /*End of Scope*/ |
| 5970 | /* 11245*/ /*Scope*/ 83, /*->11329*/ |
| 5971 | /* 11246*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 5972 | /* 11250*/ OPC_MoveChild0, |
| 5973 | /* 11251*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 5974 | /* 11254*/ OPC_RecordMemRef, |
| 5975 | /* 11255*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 5976 | /* 11256*/ OPC_CheckFoldableChainNode, |
| 5977 | /* 11257*/ OPC_RecordChild1, // #1 = $off |
| 5978 | /* 11258*/ OPC_MoveChild1, |
| 5979 | /* 11259*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 5980 | /* 11262*/ OPC_MoveParent, |
| 5981 | /* 11263*/ OPC_RecordChild2, // #2 = $val |
| 5982 | /* 11264*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 5983 | /* 11266*/ OPC_MoveParent, |
| 5984 | /* 11267*/ OPC_CheckType, MVT::i32, |
| 5985 | /* 11269*/ OPC_Scope, 28, /*->11299*/ // 2 children in Scope |
| 5986 | /* 11271*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5987 | /* 11273*/ OPC_EmitMergeInputChains1_0, |
| 5988 | /* 11274*/ OPC_EmitInteger, MVT::i32, 0, |
| 5989 | /* 11277*/ OPC_EmitConvertToTarget, 1, |
| 5990 | /* 11279*/ OPC_EmitInteger, MVT::i32, 0, |
| 5991 | /* 11282*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 5992 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 5993 | /* 11289*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 5994 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 5995 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 5996 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 5997 | /* 11299*/ /*Scope*/ 28, /*->11328*/ |
| 5998 | /* 11300*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 5999 | /* 11302*/ OPC_EmitMergeInputChains1_0, |
| 6000 | /* 11303*/ OPC_EmitInteger, MVT::i32, 0, |
| 6001 | /* 11306*/ OPC_EmitConvertToTarget, 1, |
| 6002 | /* 11308*/ OPC_EmitInteger, MVT::i64, 0, |
| 6003 | /* 11311*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 6004 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 6005 | /* 11318*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6006 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 6007 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 6008 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 6009 | /* 11328*/ 0, /*End of Scope*/ |
| 6010 | /* 11329*/ /*Scope*/ 82, /*->11412*/ |
| 6011 | /* 11330*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 6012 | /* 11333*/ OPC_MoveChild0, |
| 6013 | /* 11334*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 6014 | /* 11337*/ OPC_RecordMemRef, |
| 6015 | /* 11338*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 6016 | /* 11339*/ OPC_CheckFoldableChainNode, |
| 6017 | /* 11340*/ OPC_RecordChild1, // #1 = $off |
| 6018 | /* 11341*/ OPC_MoveChild1, |
| 6019 | /* 11342*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 6020 | /* 11345*/ OPC_MoveParent, |
| 6021 | /* 11346*/ OPC_RecordChild2, // #2 = $val |
| 6022 | /* 11347*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 6023 | /* 11349*/ OPC_MoveParent, |
| 6024 | /* 11350*/ OPC_CheckType, MVT::i32, |
| 6025 | /* 11352*/ OPC_Scope, 28, /*->11382*/ // 2 children in Scope |
| 6026 | /* 11354*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6027 | /* 11356*/ OPC_EmitMergeInputChains1_0, |
| 6028 | /* 11357*/ OPC_EmitInteger, MVT::i32, 0, |
| 6029 | /* 11360*/ OPC_EmitConvertToTarget, 1, |
| 6030 | /* 11362*/ OPC_EmitInteger, MVT::i32, 0, |
| 6031 | /* 11365*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 6032 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 6033 | /* 11372*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6034 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 6035 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 6036 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 6037 | /* 11382*/ /*Scope*/ 28, /*->11411*/ |
| 6038 | /* 11383*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6039 | /* 11385*/ OPC_EmitMergeInputChains1_0, |
| 6040 | /* 11386*/ OPC_EmitInteger, MVT::i32, 0, |
| 6041 | /* 11389*/ OPC_EmitConvertToTarget, 1, |
| 6042 | /* 11391*/ OPC_EmitInteger, MVT::i64, 0, |
| 6043 | /* 11394*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 6044 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 6045 | /* 11401*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6046 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 6047 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 6048 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 6049 | /* 11411*/ 0, /*End of Scope*/ |
| 6050 | /* 11412*/ /*Scope*/ 83, /*->11496*/ |
| 6051 | /* 11413*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 6052 | /* 11417*/ OPC_MoveChild0, |
| 6053 | /* 11418*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 6054 | /* 11421*/ OPC_RecordMemRef, |
| 6055 | /* 11422*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 6056 | /* 11423*/ OPC_CheckFoldableChainNode, |
| 6057 | /* 11424*/ OPC_RecordChild1, // #1 = $off |
| 6058 | /* 11425*/ OPC_MoveChild1, |
| 6059 | /* 11426*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 6060 | /* 11429*/ OPC_MoveParent, |
| 6061 | /* 11430*/ OPC_RecordChild2, // #2 = $val |
| 6062 | /* 11431*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 6063 | /* 11433*/ OPC_MoveParent, |
| 6064 | /* 11434*/ OPC_CheckType, MVT::i32, |
| 6065 | /* 11436*/ OPC_Scope, 28, /*->11466*/ // 2 children in Scope |
| 6066 | /* 11438*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6067 | /* 11440*/ OPC_EmitMergeInputChains1_0, |
| 6068 | /* 11441*/ OPC_EmitInteger, MVT::i32, 0, |
| 6069 | /* 11444*/ OPC_EmitConvertToTarget, 1, |
| 6070 | /* 11446*/ OPC_EmitInteger, MVT::i32, 0, |
| 6071 | /* 11449*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 6072 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 6073 | /* 11456*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6074 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 6075 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 6076 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 6077 | /* 11466*/ /*Scope*/ 28, /*->11495*/ |
| 6078 | /* 11467*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6079 | /* 11469*/ OPC_EmitMergeInputChains1_0, |
| 6080 | /* 11470*/ OPC_EmitInteger, MVT::i32, 0, |
| 6081 | /* 11473*/ OPC_EmitConvertToTarget, 1, |
| 6082 | /* 11475*/ OPC_EmitInteger, MVT::i64, 0, |
| 6083 | /* 11478*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 6084 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 6085 | /* 11485*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6086 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 6087 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 6088 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 6089 | /* 11495*/ 0, /*End of Scope*/ |
| 6090 | /* 11496*/ /*Scope*/ 75, /*->11572*/ |
| 6091 | /* 11497*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 6092 | /* 11500*/ OPC_MoveChild0, |
| 6093 | /* 11501*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| 6094 | /* 11504*/ OPC_RecordMemRef, |
| 6095 | /* 11505*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 6096 | /* 11506*/ OPC_CheckFoldableChainNode, |
| 6097 | /* 11507*/ OPC_RecordChild1, // #1 = $off |
| 6098 | /* 11508*/ OPC_MoveChild1, |
| 6099 | /* 11509*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 6100 | /* 11512*/ OPC_MoveParent, |
| 6101 | /* 11513*/ OPC_RecordChild2, // #2 = $exp |
| 6102 | /* 11514*/ OPC_RecordChild3, // #3 = $new |
| 6103 | /* 11515*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 6104 | /* 11517*/ OPC_MoveParent, |
| 6105 | /* 11518*/ OPC_CheckType, MVT::i32, |
| 6106 | /* 11520*/ OPC_EmitMergeInputChains1_0, |
| 6107 | /* 11521*/ OPC_EmitInteger, MVT::i32, 0, |
| 6108 | /* 11524*/ OPC_EmitConvertToTarget, 1, |
| 6109 | /* 11526*/ OPC_Scope, 21, /*->11549*/ // 2 children in Scope |
| 6110 | /* 11528*/ OPC_EmitInteger, MVT::i32, 0, |
| 6111 | /* 11531*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 6112 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 6113 | /* 11538*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6114 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 6115 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 6116 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 6117 | /* 11549*/ /*Scope*/ 21, /*->11571*/ |
| 6118 | /* 11550*/ OPC_EmitInteger, MVT::i64, 0, |
| 6119 | /* 11553*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 6120 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 6121 | /* 11560*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6122 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 6123 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>>, 255:{ *:[i32] }) - Complexity = 15 |
| 6124 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 6125 | /* 11571*/ 0, /*End of Scope*/ |
| 6126 | /* 11572*/ /*Scope*/ 76, /*->11649*/ |
| 6127 | /* 11573*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 6128 | /* 11577*/ OPC_MoveChild0, |
| 6129 | /* 11578*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| 6130 | /* 11581*/ OPC_RecordMemRef, |
| 6131 | /* 11582*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 6132 | /* 11583*/ OPC_CheckFoldableChainNode, |
| 6133 | /* 11584*/ OPC_RecordChild1, // #1 = $off |
| 6134 | /* 11585*/ OPC_MoveChild1, |
| 6135 | /* 11586*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 6136 | /* 11589*/ OPC_MoveParent, |
| 6137 | /* 11590*/ OPC_RecordChild2, // #2 = $exp |
| 6138 | /* 11591*/ OPC_RecordChild3, // #3 = $new |
| 6139 | /* 11592*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 6140 | /* 11594*/ OPC_MoveParent, |
| 6141 | /* 11595*/ OPC_CheckType, MVT::i32, |
| 6142 | /* 11597*/ OPC_EmitMergeInputChains1_0, |
| 6143 | /* 11598*/ OPC_EmitInteger, MVT::i32, 0, |
| 6144 | /* 11601*/ OPC_EmitConvertToTarget, 1, |
| 6145 | /* 11603*/ OPC_Scope, 21, /*->11626*/ // 2 children in Scope |
| 6146 | /* 11605*/ OPC_EmitInteger, MVT::i32, 0, |
| 6147 | /* 11608*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 6148 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 6149 | /* 11615*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6150 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 6151 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 6152 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 6153 | /* 11626*/ /*Scope*/ 21, /*->11648*/ |
| 6154 | /* 11627*/ OPC_EmitInteger, MVT::i64, 0, |
| 6155 | /* 11630*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 6156 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 6157 | /* 11637*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6158 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 6159 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>>, 65535:{ *:[i32] }) - Complexity = 15 |
| 6160 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 6161 | /* 11648*/ 0, /*End of Scope*/ |
| 6162 | /* 11649*/ /*Scope*/ 65, /*->11715*/ |
| 6163 | /* 11650*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 6164 | /* 11653*/ OPC_MoveChild0, |
| 6165 | /* 11654*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 6166 | /* 11657*/ OPC_RecordMemRef, |
| 6167 | /* 11658*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 6168 | /* 11659*/ OPC_CheckFoldableChainNode, |
| 6169 | /* 11660*/ OPC_RecordChild1, // #1 = $addr |
| 6170 | /* 11661*/ OPC_Scope, 25, /*->11688*/ // 2 children in Scope |
| 6171 | /* 11663*/ OPC_CheckChild1Type, MVT::i32, |
| 6172 | /* 11665*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 6173 | /* 11667*/ OPC_MoveParent, |
| 6174 | /* 11668*/ OPC_CheckType, MVT::i32, |
| 6175 | /* 11670*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 6176 | /* 11672*/ OPC_EmitMergeInputChains1_0, |
| 6177 | /* 11673*/ OPC_EmitInteger, MVT::i32, 0, |
| 6178 | /* 11676*/ OPC_EmitInteger, MVT::i32, 0, |
| 6179 | /* 11679*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6180 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 6181 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_atomic_load_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6182 | // Dst: (ATOMIC_LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 6183 | /* 11688*/ /*Scope*/ 25, /*->11714*/ |
| 6184 | /* 11689*/ OPC_CheckChild1Type, MVT::i64, |
| 6185 | /* 11691*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 6186 | /* 11693*/ OPC_MoveParent, |
| 6187 | /* 11694*/ OPC_CheckType, MVT::i32, |
| 6188 | /* 11696*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 6189 | /* 11698*/ OPC_EmitMergeInputChains1_0, |
| 6190 | /* 11699*/ OPC_EmitInteger, MVT::i32, 0, |
| 6191 | /* 11702*/ OPC_EmitInteger, MVT::i64, 0, |
| 6192 | /* 11705*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6193 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 6194 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_atomic_load_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6195 | // Dst: (ATOMIC_LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 6196 | /* 11714*/ 0, /*End of Scope*/ |
| 6197 | /* 11715*/ /*Scope*/ 66, /*->11782*/ |
| 6198 | /* 11716*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 6199 | /* 11720*/ OPC_MoveChild0, |
| 6200 | /* 11721*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD), |
| 6201 | /* 11724*/ OPC_RecordMemRef, |
| 6202 | /* 11725*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 6203 | /* 11726*/ OPC_CheckFoldableChainNode, |
| 6204 | /* 11727*/ OPC_RecordChild1, // #1 = $addr |
| 6205 | /* 11728*/ OPC_Scope, 25, /*->11755*/ // 2 children in Scope |
| 6206 | /* 11730*/ OPC_CheckChild1Type, MVT::i32, |
| 6207 | /* 11732*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 6208 | /* 11734*/ OPC_MoveParent, |
| 6209 | /* 11735*/ OPC_CheckType, MVT::i32, |
| 6210 | /* 11737*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 6211 | /* 11739*/ OPC_EmitMergeInputChains1_0, |
| 6212 | /* 11740*/ OPC_EmitInteger, MVT::i32, 0, |
| 6213 | /* 11743*/ OPC_EmitInteger, MVT::i32, 0, |
| 6214 | /* 11746*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6215 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 6216 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_atomic_load_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6217 | // Dst: (ATOMIC_LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 6218 | /* 11755*/ /*Scope*/ 25, /*->11781*/ |
| 6219 | /* 11756*/ OPC_CheckChild1Type, MVT::i64, |
| 6220 | /* 11758*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 6221 | /* 11760*/ OPC_MoveParent, |
| 6222 | /* 11761*/ OPC_CheckType, MVT::i32, |
| 6223 | /* 11763*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 6224 | /* 11765*/ OPC_EmitMergeInputChains1_0, |
| 6225 | /* 11766*/ OPC_EmitInteger, MVT::i32, 0, |
| 6226 | /* 11769*/ OPC_EmitInteger, MVT::i64, 0, |
| 6227 | /* 11772*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6228 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 6229 | // Src: (and:{ *:[i32] } (atomic_load:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_atomic_load_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6230 | // Dst: (ATOMIC_LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 6231 | /* 11781*/ 0, /*End of Scope*/ |
| 6232 | /* 11782*/ /*Scope*/ 69, /*->11852*/ |
| 6233 | /* 11783*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 6234 | /* 11786*/ OPC_MoveChild0, |
| 6235 | /* 11787*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 6236 | /* 11790*/ OPC_RecordMemRef, |
| 6237 | /* 11791*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 6238 | /* 11792*/ OPC_CheckFoldableChainNode, |
| 6239 | /* 11793*/ OPC_RecordChild1, // #1 = $addr |
| 6240 | /* 11794*/ OPC_Scope, 27, /*->11823*/ // 2 children in Scope |
| 6241 | /* 11796*/ OPC_CheckChild1Type, MVT::i32, |
| 6242 | /* 11798*/ OPC_RecordChild2, // #2 = $val |
| 6243 | /* 11799*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 6244 | /* 11801*/ OPC_MoveParent, |
| 6245 | /* 11802*/ OPC_CheckType, MVT::i32, |
| 6246 | /* 11804*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6247 | /* 11806*/ OPC_EmitMergeInputChains1_0, |
| 6248 | /* 11807*/ OPC_EmitInteger, MVT::i32, 0, |
| 6249 | /* 11810*/ OPC_EmitInteger, MVT::i32, 0, |
| 6250 | /* 11813*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6251 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6252 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6253 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 6254 | /* 11823*/ /*Scope*/ 27, /*->11851*/ |
| 6255 | /* 11824*/ OPC_CheckChild1Type, MVT::i64, |
| 6256 | /* 11826*/ OPC_RecordChild2, // #2 = $val |
| 6257 | /* 11827*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 6258 | /* 11829*/ OPC_MoveParent, |
| 6259 | /* 11830*/ OPC_CheckType, MVT::i32, |
| 6260 | /* 11832*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6261 | /* 11834*/ OPC_EmitMergeInputChains1_0, |
| 6262 | /* 11835*/ OPC_EmitInteger, MVT::i32, 0, |
| 6263 | /* 11838*/ OPC_EmitInteger, MVT::i64, 0, |
| 6264 | /* 11841*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6265 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6266 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6267 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 6268 | /* 11851*/ 0, /*End of Scope*/ |
| 6269 | /* 11852*/ /*Scope*/ 70, /*->11923*/ |
| 6270 | /* 11853*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 6271 | /* 11857*/ OPC_MoveChild0, |
| 6272 | /* 11858*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| 6273 | /* 11861*/ OPC_RecordMemRef, |
| 6274 | /* 11862*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 6275 | /* 11863*/ OPC_CheckFoldableChainNode, |
| 6276 | /* 11864*/ OPC_RecordChild1, // #1 = $addr |
| 6277 | /* 11865*/ OPC_Scope, 27, /*->11894*/ // 2 children in Scope |
| 6278 | /* 11867*/ OPC_CheckChild1Type, MVT::i32, |
| 6279 | /* 11869*/ OPC_RecordChild2, // #2 = $val |
| 6280 | /* 11870*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 6281 | /* 11872*/ OPC_MoveParent, |
| 6282 | /* 11873*/ OPC_CheckType, MVT::i32, |
| 6283 | /* 11875*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6284 | /* 11877*/ OPC_EmitMergeInputChains1_0, |
| 6285 | /* 11878*/ OPC_EmitInteger, MVT::i32, 0, |
| 6286 | /* 11881*/ OPC_EmitInteger, MVT::i32, 0, |
| 6287 | /* 11884*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6288 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6289 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6290 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 6291 | /* 11894*/ /*Scope*/ 27, /*->11922*/ |
| 6292 | /* 11895*/ OPC_CheckChild1Type, MVT::i64, |
| 6293 | /* 11897*/ OPC_RecordChild2, // #2 = $val |
| 6294 | /* 11898*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 6295 | /* 11900*/ OPC_MoveParent, |
| 6296 | /* 11901*/ OPC_CheckType, MVT::i32, |
| 6297 | /* 11903*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6298 | /* 11905*/ OPC_EmitMergeInputChains1_0, |
| 6299 | /* 11906*/ OPC_EmitInteger, MVT::i32, 0, |
| 6300 | /* 11909*/ OPC_EmitInteger, MVT::i64, 0, |
| 6301 | /* 11912*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6302 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6303 | // Src: (and:{ *:[i32] } (atomic_load_add:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6304 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 6305 | /* 11922*/ 0, /*End of Scope*/ |
| 6306 | /* 11923*/ /*Scope*/ 69, /*->11993*/ |
| 6307 | /* 11924*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 6308 | /* 11927*/ OPC_MoveChild0, |
| 6309 | /* 11928*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 6310 | /* 11931*/ OPC_RecordMemRef, |
| 6311 | /* 11932*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 6312 | /* 11933*/ OPC_CheckFoldableChainNode, |
| 6313 | /* 11934*/ OPC_RecordChild1, // #1 = $addr |
| 6314 | /* 11935*/ OPC_Scope, 27, /*->11964*/ // 2 children in Scope |
| 6315 | /* 11937*/ OPC_CheckChild1Type, MVT::i32, |
| 6316 | /* 11939*/ OPC_RecordChild2, // #2 = $val |
| 6317 | /* 11940*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 6318 | /* 11942*/ OPC_MoveParent, |
| 6319 | /* 11943*/ OPC_CheckType, MVT::i32, |
| 6320 | /* 11945*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6321 | /* 11947*/ OPC_EmitMergeInputChains1_0, |
| 6322 | /* 11948*/ OPC_EmitInteger, MVT::i32, 0, |
| 6323 | /* 11951*/ OPC_EmitInteger, MVT::i32, 0, |
| 6324 | /* 11954*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6325 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6326 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6327 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 6328 | /* 11964*/ /*Scope*/ 27, /*->11992*/ |
| 6329 | /* 11965*/ OPC_CheckChild1Type, MVT::i64, |
| 6330 | /* 11967*/ OPC_RecordChild2, // #2 = $val |
| 6331 | /* 11968*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 6332 | /* 11970*/ OPC_MoveParent, |
| 6333 | /* 11971*/ OPC_CheckType, MVT::i32, |
| 6334 | /* 11973*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6335 | /* 11975*/ OPC_EmitMergeInputChains1_0, |
| 6336 | /* 11976*/ OPC_EmitInteger, MVT::i32, 0, |
| 6337 | /* 11979*/ OPC_EmitInteger, MVT::i64, 0, |
| 6338 | /* 11982*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6339 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6340 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6341 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 6342 | /* 11992*/ 0, /*End of Scope*/ |
| 6343 | /* 11993*/ /*Scope*/ 70, /*->12064*/ |
| 6344 | /* 11994*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 6345 | /* 11998*/ OPC_MoveChild0, |
| 6346 | /* 11999*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| 6347 | /* 12002*/ OPC_RecordMemRef, |
| 6348 | /* 12003*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 6349 | /* 12004*/ OPC_CheckFoldableChainNode, |
| 6350 | /* 12005*/ OPC_RecordChild1, // #1 = $addr |
| 6351 | /* 12006*/ OPC_Scope, 27, /*->12035*/ // 2 children in Scope |
| 6352 | /* 12008*/ OPC_CheckChild1Type, MVT::i32, |
| 6353 | /* 12010*/ OPC_RecordChild2, // #2 = $val |
| 6354 | /* 12011*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 6355 | /* 12013*/ OPC_MoveParent, |
| 6356 | /* 12014*/ OPC_CheckType, MVT::i32, |
| 6357 | /* 12016*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6358 | /* 12018*/ OPC_EmitMergeInputChains1_0, |
| 6359 | /* 12019*/ OPC_EmitInteger, MVT::i32, 0, |
| 6360 | /* 12022*/ OPC_EmitInteger, MVT::i32, 0, |
| 6361 | /* 12025*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6362 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6363 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6364 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 6365 | /* 12035*/ /*Scope*/ 27, /*->12063*/ |
| 6366 | /* 12036*/ OPC_CheckChild1Type, MVT::i64, |
| 6367 | /* 12038*/ OPC_RecordChild2, // #2 = $val |
| 6368 | /* 12039*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 6369 | /* 12041*/ OPC_MoveParent, |
| 6370 | /* 12042*/ OPC_CheckType, MVT::i32, |
| 6371 | /* 12044*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6372 | /* 12046*/ OPC_EmitMergeInputChains1_0, |
| 6373 | /* 12047*/ OPC_EmitInteger, MVT::i32, 0, |
| 6374 | /* 12050*/ OPC_EmitInteger, MVT::i64, 0, |
| 6375 | /* 12053*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6376 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6377 | // Src: (and:{ *:[i32] } (atomic_load_sub:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6378 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 6379 | /* 12063*/ 0, /*End of Scope*/ |
| 6380 | /* 12064*/ /*Scope*/ 69, /*->12134*/ |
| 6381 | /* 12065*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 6382 | /* 12068*/ OPC_MoveChild0, |
| 6383 | /* 12069*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 6384 | /* 12072*/ OPC_RecordMemRef, |
| 6385 | /* 12073*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 6386 | /* 12074*/ OPC_CheckFoldableChainNode, |
| 6387 | /* 12075*/ OPC_RecordChild1, // #1 = $addr |
| 6388 | /* 12076*/ OPC_Scope, 27, /*->12105*/ // 2 children in Scope |
| 6389 | /* 12078*/ OPC_CheckChild1Type, MVT::i32, |
| 6390 | /* 12080*/ OPC_RecordChild2, // #2 = $val |
| 6391 | /* 12081*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 6392 | /* 12083*/ OPC_MoveParent, |
| 6393 | /* 12084*/ OPC_CheckType, MVT::i32, |
| 6394 | /* 12086*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6395 | /* 12088*/ OPC_EmitMergeInputChains1_0, |
| 6396 | /* 12089*/ OPC_EmitInteger, MVT::i32, 0, |
| 6397 | /* 12092*/ OPC_EmitInteger, MVT::i32, 0, |
| 6398 | /* 12095*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6399 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6400 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6401 | // Dst: (ATOMIC_RMW8_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 6402 | /* 12105*/ /*Scope*/ 27, /*->12133*/ |
| 6403 | /* 12106*/ OPC_CheckChild1Type, MVT::i64, |
| 6404 | /* 12108*/ OPC_RecordChild2, // #2 = $val |
| 6405 | /* 12109*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 6406 | /* 12111*/ OPC_MoveParent, |
| 6407 | /* 12112*/ OPC_CheckType, MVT::i32, |
| 6408 | /* 12114*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6409 | /* 12116*/ OPC_EmitMergeInputChains1_0, |
| 6410 | /* 12117*/ OPC_EmitInteger, MVT::i32, 0, |
| 6411 | /* 12120*/ OPC_EmitInteger, MVT::i64, 0, |
| 6412 | /* 12123*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6413 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6414 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6415 | // Dst: (ATOMIC_RMW8_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 6416 | /* 12133*/ 0, /*End of Scope*/ |
| 6417 | /* 12134*/ /*Scope*/ 70, /*->12205*/ |
| 6418 | /* 12135*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 6419 | /* 12139*/ OPC_MoveChild0, |
| 6420 | /* 12140*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| 6421 | /* 12143*/ OPC_RecordMemRef, |
| 6422 | /* 12144*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 6423 | /* 12145*/ OPC_CheckFoldableChainNode, |
| 6424 | /* 12146*/ OPC_RecordChild1, // #1 = $addr |
| 6425 | /* 12147*/ OPC_Scope, 27, /*->12176*/ // 2 children in Scope |
| 6426 | /* 12149*/ OPC_CheckChild1Type, MVT::i32, |
| 6427 | /* 12151*/ OPC_RecordChild2, // #2 = $val |
| 6428 | /* 12152*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 6429 | /* 12154*/ OPC_MoveParent, |
| 6430 | /* 12155*/ OPC_CheckType, MVT::i32, |
| 6431 | /* 12157*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6432 | /* 12159*/ OPC_EmitMergeInputChains1_0, |
| 6433 | /* 12160*/ OPC_EmitInteger, MVT::i32, 0, |
| 6434 | /* 12163*/ OPC_EmitInteger, MVT::i32, 0, |
| 6435 | /* 12166*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6436 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6437 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6438 | // Dst: (ATOMIC_RMW16_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 6439 | /* 12176*/ /*Scope*/ 27, /*->12204*/ |
| 6440 | /* 12177*/ OPC_CheckChild1Type, MVT::i64, |
| 6441 | /* 12179*/ OPC_RecordChild2, // #2 = $val |
| 6442 | /* 12180*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 6443 | /* 12182*/ OPC_MoveParent, |
| 6444 | /* 12183*/ OPC_CheckType, MVT::i32, |
| 6445 | /* 12185*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6446 | /* 12187*/ OPC_EmitMergeInputChains1_0, |
| 6447 | /* 12188*/ OPC_EmitInteger, MVT::i32, 0, |
| 6448 | /* 12191*/ OPC_EmitInteger, MVT::i64, 0, |
| 6449 | /* 12194*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6450 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6451 | // Src: (and:{ *:[i32] } (atomic_load_and:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6452 | // Dst: (ATOMIC_RMW16_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 6453 | /* 12204*/ 0, /*End of Scope*/ |
| 6454 | /* 12205*/ /*Scope*/ 69, /*->12275*/ |
| 6455 | /* 12206*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 6456 | /* 12209*/ OPC_MoveChild0, |
| 6457 | /* 12210*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 6458 | /* 12213*/ OPC_RecordMemRef, |
| 6459 | /* 12214*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 6460 | /* 12215*/ OPC_CheckFoldableChainNode, |
| 6461 | /* 12216*/ OPC_RecordChild1, // #1 = $addr |
| 6462 | /* 12217*/ OPC_Scope, 27, /*->12246*/ // 2 children in Scope |
| 6463 | /* 12219*/ OPC_CheckChild1Type, MVT::i32, |
| 6464 | /* 12221*/ OPC_RecordChild2, // #2 = $val |
| 6465 | /* 12222*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 6466 | /* 12224*/ OPC_MoveParent, |
| 6467 | /* 12225*/ OPC_CheckType, MVT::i32, |
| 6468 | /* 12227*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6469 | /* 12229*/ OPC_EmitMergeInputChains1_0, |
| 6470 | /* 12230*/ OPC_EmitInteger, MVT::i32, 0, |
| 6471 | /* 12233*/ OPC_EmitInteger, MVT::i32, 0, |
| 6472 | /* 12236*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6473 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6474 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6475 | // Dst: (ATOMIC_RMW8_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 6476 | /* 12246*/ /*Scope*/ 27, /*->12274*/ |
| 6477 | /* 12247*/ OPC_CheckChild1Type, MVT::i64, |
| 6478 | /* 12249*/ OPC_RecordChild2, // #2 = $val |
| 6479 | /* 12250*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 6480 | /* 12252*/ OPC_MoveParent, |
| 6481 | /* 12253*/ OPC_CheckType, MVT::i32, |
| 6482 | /* 12255*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6483 | /* 12257*/ OPC_EmitMergeInputChains1_0, |
| 6484 | /* 12258*/ OPC_EmitInteger, MVT::i32, 0, |
| 6485 | /* 12261*/ OPC_EmitInteger, MVT::i64, 0, |
| 6486 | /* 12264*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6487 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6488 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6489 | // Dst: (ATOMIC_RMW8_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 6490 | /* 12274*/ 0, /*End of Scope*/ |
| 6491 | /* 12275*/ /*Scope*/ 70, /*->12346*/ |
| 6492 | /* 12276*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 6493 | /* 12280*/ OPC_MoveChild0, |
| 6494 | /* 12281*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| 6495 | /* 12284*/ OPC_RecordMemRef, |
| 6496 | /* 12285*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 6497 | /* 12286*/ OPC_CheckFoldableChainNode, |
| 6498 | /* 12287*/ OPC_RecordChild1, // #1 = $addr |
| 6499 | /* 12288*/ OPC_Scope, 27, /*->12317*/ // 2 children in Scope |
| 6500 | /* 12290*/ OPC_CheckChild1Type, MVT::i32, |
| 6501 | /* 12292*/ OPC_RecordChild2, // #2 = $val |
| 6502 | /* 12293*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 6503 | /* 12295*/ OPC_MoveParent, |
| 6504 | /* 12296*/ OPC_CheckType, MVT::i32, |
| 6505 | /* 12298*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6506 | /* 12300*/ OPC_EmitMergeInputChains1_0, |
| 6507 | /* 12301*/ OPC_EmitInteger, MVT::i32, 0, |
| 6508 | /* 12304*/ OPC_EmitInteger, MVT::i32, 0, |
| 6509 | /* 12307*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6510 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6511 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6512 | // Dst: (ATOMIC_RMW16_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 6513 | /* 12317*/ /*Scope*/ 27, /*->12345*/ |
| 6514 | /* 12318*/ OPC_CheckChild1Type, MVT::i64, |
| 6515 | /* 12320*/ OPC_RecordChild2, // #2 = $val |
| 6516 | /* 12321*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 6517 | /* 12323*/ OPC_MoveParent, |
| 6518 | /* 12324*/ OPC_CheckType, MVT::i32, |
| 6519 | /* 12326*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6520 | /* 12328*/ OPC_EmitMergeInputChains1_0, |
| 6521 | /* 12329*/ OPC_EmitInteger, MVT::i32, 0, |
| 6522 | /* 12332*/ OPC_EmitInteger, MVT::i64, 0, |
| 6523 | /* 12335*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6524 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6525 | // Src: (and:{ *:[i32] } (atomic_load_or:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6526 | // Dst: (ATOMIC_RMW16_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 6527 | /* 12345*/ 0, /*End of Scope*/ |
| 6528 | /* 12346*/ /*Scope*/ 69, /*->12416*/ |
| 6529 | /* 12347*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 6530 | /* 12350*/ OPC_MoveChild0, |
| 6531 | /* 12351*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 6532 | /* 12354*/ OPC_RecordMemRef, |
| 6533 | /* 12355*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 6534 | /* 12356*/ OPC_CheckFoldableChainNode, |
| 6535 | /* 12357*/ OPC_RecordChild1, // #1 = $addr |
| 6536 | /* 12358*/ OPC_Scope, 27, /*->12387*/ // 2 children in Scope |
| 6537 | /* 12360*/ OPC_CheckChild1Type, MVT::i32, |
| 6538 | /* 12362*/ OPC_RecordChild2, // #2 = $val |
| 6539 | /* 12363*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 6540 | /* 12365*/ OPC_MoveParent, |
| 6541 | /* 12366*/ OPC_CheckType, MVT::i32, |
| 6542 | /* 12368*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6543 | /* 12370*/ OPC_EmitMergeInputChains1_0, |
| 6544 | /* 12371*/ OPC_EmitInteger, MVT::i32, 0, |
| 6545 | /* 12374*/ OPC_EmitInteger, MVT::i32, 0, |
| 6546 | /* 12377*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6547 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6548 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6549 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 6550 | /* 12387*/ /*Scope*/ 27, /*->12415*/ |
| 6551 | /* 12388*/ OPC_CheckChild1Type, MVT::i64, |
| 6552 | /* 12390*/ OPC_RecordChild2, // #2 = $val |
| 6553 | /* 12391*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 6554 | /* 12393*/ OPC_MoveParent, |
| 6555 | /* 12394*/ OPC_CheckType, MVT::i32, |
| 6556 | /* 12396*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6557 | /* 12398*/ OPC_EmitMergeInputChains1_0, |
| 6558 | /* 12399*/ OPC_EmitInteger, MVT::i32, 0, |
| 6559 | /* 12402*/ OPC_EmitInteger, MVT::i64, 0, |
| 6560 | /* 12405*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6561 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6562 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6563 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 6564 | /* 12415*/ 0, /*End of Scope*/ |
| 6565 | /* 12416*/ /*Scope*/ 70, /*->12487*/ |
| 6566 | /* 12417*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 6567 | /* 12421*/ OPC_MoveChild0, |
| 6568 | /* 12422*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| 6569 | /* 12425*/ OPC_RecordMemRef, |
| 6570 | /* 12426*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 6571 | /* 12427*/ OPC_CheckFoldableChainNode, |
| 6572 | /* 12428*/ OPC_RecordChild1, // #1 = $addr |
| 6573 | /* 12429*/ OPC_Scope, 27, /*->12458*/ // 2 children in Scope |
| 6574 | /* 12431*/ OPC_CheckChild1Type, MVT::i32, |
| 6575 | /* 12433*/ OPC_RecordChild2, // #2 = $val |
| 6576 | /* 12434*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 6577 | /* 12436*/ OPC_MoveParent, |
| 6578 | /* 12437*/ OPC_CheckType, MVT::i32, |
| 6579 | /* 12439*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6580 | /* 12441*/ OPC_EmitMergeInputChains1_0, |
| 6581 | /* 12442*/ OPC_EmitInteger, MVT::i32, 0, |
| 6582 | /* 12445*/ OPC_EmitInteger, MVT::i32, 0, |
| 6583 | /* 12448*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6584 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6585 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6586 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 6587 | /* 12458*/ /*Scope*/ 27, /*->12486*/ |
| 6588 | /* 12459*/ OPC_CheckChild1Type, MVT::i64, |
| 6589 | /* 12461*/ OPC_RecordChild2, // #2 = $val |
| 6590 | /* 12462*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 6591 | /* 12464*/ OPC_MoveParent, |
| 6592 | /* 12465*/ OPC_CheckType, MVT::i32, |
| 6593 | /* 12467*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6594 | /* 12469*/ OPC_EmitMergeInputChains1_0, |
| 6595 | /* 12470*/ OPC_EmitInteger, MVT::i32, 0, |
| 6596 | /* 12473*/ OPC_EmitInteger, MVT::i64, 0, |
| 6597 | /* 12476*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6598 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6599 | // Src: (and:{ *:[i32] } (atomic_load_xor:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6600 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 6601 | /* 12486*/ 0, /*End of Scope*/ |
| 6602 | /* 12487*/ /*Scope*/ 69, /*->12557*/ |
| 6603 | /* 12488*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 6604 | /* 12491*/ OPC_MoveChild0, |
| 6605 | /* 12492*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 6606 | /* 12495*/ OPC_RecordMemRef, |
| 6607 | /* 12496*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 6608 | /* 12497*/ OPC_CheckFoldableChainNode, |
| 6609 | /* 12498*/ OPC_RecordChild1, // #1 = $addr |
| 6610 | /* 12499*/ OPC_Scope, 27, /*->12528*/ // 2 children in Scope |
| 6611 | /* 12501*/ OPC_CheckChild1Type, MVT::i32, |
| 6612 | /* 12503*/ OPC_RecordChild2, // #2 = $val |
| 6613 | /* 12504*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 6614 | /* 12506*/ OPC_MoveParent, |
| 6615 | /* 12507*/ OPC_CheckType, MVT::i32, |
| 6616 | /* 12509*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6617 | /* 12511*/ OPC_EmitMergeInputChains1_0, |
| 6618 | /* 12512*/ OPC_EmitInteger, MVT::i32, 0, |
| 6619 | /* 12515*/ OPC_EmitInteger, MVT::i32, 0, |
| 6620 | /* 12518*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6621 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6622 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6623 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 6624 | /* 12528*/ /*Scope*/ 27, /*->12556*/ |
| 6625 | /* 12529*/ OPC_CheckChild1Type, MVT::i64, |
| 6626 | /* 12531*/ OPC_RecordChild2, // #2 = $val |
| 6627 | /* 12532*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 6628 | /* 12534*/ OPC_MoveParent, |
| 6629 | /* 12535*/ OPC_CheckType, MVT::i32, |
| 6630 | /* 12537*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6631 | /* 12539*/ OPC_EmitMergeInputChains1_0, |
| 6632 | /* 12540*/ OPC_EmitInteger, MVT::i32, 0, |
| 6633 | /* 12543*/ OPC_EmitInteger, MVT::i64, 0, |
| 6634 | /* 12546*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6635 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6636 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6637 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 6638 | /* 12556*/ 0, /*End of Scope*/ |
| 6639 | /* 12557*/ /*Scope*/ 70, /*->12628*/ |
| 6640 | /* 12558*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 6641 | /* 12562*/ OPC_MoveChild0, |
| 6642 | /* 12563*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_SWAP), |
| 6643 | /* 12566*/ OPC_RecordMemRef, |
| 6644 | /* 12567*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 6645 | /* 12568*/ OPC_CheckFoldableChainNode, |
| 6646 | /* 12569*/ OPC_RecordChild1, // #1 = $addr |
| 6647 | /* 12570*/ OPC_Scope, 27, /*->12599*/ // 2 children in Scope |
| 6648 | /* 12572*/ OPC_CheckChild1Type, MVT::i32, |
| 6649 | /* 12574*/ OPC_RecordChild2, // #2 = $val |
| 6650 | /* 12575*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 6651 | /* 12577*/ OPC_MoveParent, |
| 6652 | /* 12578*/ OPC_CheckType, MVT::i32, |
| 6653 | /* 12580*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6654 | /* 12582*/ OPC_EmitMergeInputChains1_0, |
| 6655 | /* 12583*/ OPC_EmitInteger, MVT::i32, 0, |
| 6656 | /* 12586*/ OPC_EmitInteger, MVT::i32, 0, |
| 6657 | /* 12589*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6658 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6659 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6660 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 6661 | /* 12599*/ /*Scope*/ 27, /*->12627*/ |
| 6662 | /* 12600*/ OPC_CheckChild1Type, MVT::i64, |
| 6663 | /* 12602*/ OPC_RecordChild2, // #2 = $val |
| 6664 | /* 12603*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 6665 | /* 12605*/ OPC_MoveParent, |
| 6666 | /* 12606*/ OPC_CheckType, MVT::i32, |
| 6667 | /* 12608*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6668 | /* 12610*/ OPC_EmitMergeInputChains1_0, |
| 6669 | /* 12611*/ OPC_EmitInteger, MVT::i32, 0, |
| 6670 | /* 12614*/ OPC_EmitInteger, MVT::i64, 0, |
| 6671 | /* 12617*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6672 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 6673 | // Src: (and:{ *:[i32] } (atomic_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6674 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 6675 | /* 12627*/ 0, /*End of Scope*/ |
| 6676 | /* 12628*/ /*Scope*/ 73, /*->12702*/ |
| 6677 | /* 12629*/ OPC_CheckAndImm, 127|128,1/*255*/, |
| 6678 | /* 12632*/ OPC_MoveChild0, |
| 6679 | /* 12633*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| 6680 | /* 12636*/ OPC_RecordMemRef, |
| 6681 | /* 12637*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 6682 | /* 12638*/ OPC_CheckFoldableChainNode, |
| 6683 | /* 12639*/ OPC_RecordChild1, // #1 = $addr |
| 6684 | /* 12640*/ OPC_Scope, 29, /*->12671*/ // 2 children in Scope |
| 6685 | /* 12642*/ OPC_CheckChild1Type, MVT::i32, |
| 6686 | /* 12644*/ OPC_RecordChild2, // #2 = $exp |
| 6687 | /* 12645*/ OPC_RecordChild3, // #3 = $new |
| 6688 | /* 12646*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 6689 | /* 12648*/ OPC_MoveParent, |
| 6690 | /* 12649*/ OPC_CheckType, MVT::i32, |
| 6691 | /* 12651*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6692 | /* 12653*/ OPC_EmitMergeInputChains1_0, |
| 6693 | /* 12654*/ OPC_EmitInteger, MVT::i32, 0, |
| 6694 | /* 12657*/ OPC_EmitInteger, MVT::i32, 0, |
| 6695 | /* 12660*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6696 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 6697 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6698 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 6699 | /* 12671*/ /*Scope*/ 29, /*->12701*/ |
| 6700 | /* 12672*/ OPC_CheckChild1Type, MVT::i64, |
| 6701 | /* 12674*/ OPC_RecordChild2, // #2 = $exp |
| 6702 | /* 12675*/ OPC_RecordChild3, // #3 = $new |
| 6703 | /* 12676*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 6704 | /* 12678*/ OPC_MoveParent, |
| 6705 | /* 12679*/ OPC_CheckType, MVT::i32, |
| 6706 | /* 12681*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6707 | /* 12683*/ OPC_EmitMergeInputChains1_0, |
| 6708 | /* 12684*/ OPC_EmitInteger, MVT::i32, 0, |
| 6709 | /* 12687*/ OPC_EmitInteger, MVT::i64, 0, |
| 6710 | /* 12690*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6711 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 6712 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>>, 255:{ *:[i32] }) - Complexity = 12 |
| 6713 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 6714 | /* 12701*/ 0, /*End of Scope*/ |
| 6715 | /* 12702*/ /*Scope*/ 74, /*->12777*/ |
| 6716 | /* 12703*/ OPC_CheckAndImm, 127|128,127|128,3/*65535*/, |
| 6717 | /* 12707*/ OPC_MoveChild0, |
| 6718 | /* 12708*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| 6719 | /* 12711*/ OPC_RecordMemRef, |
| 6720 | /* 12712*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 6721 | /* 12713*/ OPC_CheckFoldableChainNode, |
| 6722 | /* 12714*/ OPC_RecordChild1, // #1 = $addr |
| 6723 | /* 12715*/ OPC_Scope, 29, /*->12746*/ // 2 children in Scope |
| 6724 | /* 12717*/ OPC_CheckChild1Type, MVT::i32, |
| 6725 | /* 12719*/ OPC_RecordChild2, // #2 = $exp |
| 6726 | /* 12720*/ OPC_RecordChild3, // #3 = $new |
| 6727 | /* 12721*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 6728 | /* 12723*/ OPC_MoveParent, |
| 6729 | /* 12724*/ OPC_CheckType, MVT::i32, |
| 6730 | /* 12726*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6731 | /* 12728*/ OPC_EmitMergeInputChains1_0, |
| 6732 | /* 12729*/ OPC_EmitInteger, MVT::i32, 0, |
| 6733 | /* 12732*/ OPC_EmitInteger, MVT::i32, 0, |
| 6734 | /* 12735*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 6735 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 6736 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6737 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 6738 | /* 12746*/ /*Scope*/ 29, /*->12776*/ |
| 6739 | /* 12747*/ OPC_CheckChild1Type, MVT::i64, |
| 6740 | /* 12749*/ OPC_RecordChild2, // #2 = $exp |
| 6741 | /* 12750*/ OPC_RecordChild3, // #3 = $new |
| 6742 | /* 12751*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 6743 | /* 12753*/ OPC_MoveParent, |
| 6744 | /* 12754*/ OPC_CheckType, MVT::i32, |
| 6745 | /* 12756*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 6746 | /* 12758*/ OPC_EmitMergeInputChains1_0, |
| 6747 | /* 12759*/ OPC_EmitInteger, MVT::i32, 0, |
| 6748 | /* 12762*/ OPC_EmitInteger, MVT::i64, 0, |
| 6749 | /* 12765*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 6750 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 6751 | // Src: (and:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>>, 65535:{ *:[i32] }) - Complexity = 12 |
| 6752 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 6753 | /* 12776*/ 0, /*End of Scope*/ |
| 6754 | /* 12777*/ /*Scope*/ 98, /*->12876*/ |
| 6755 | /* 12778*/ OPC_RecordChild0, // #0 = $lhs |
| 6756 | /* 12779*/ OPC_Scope, 23, /*->12804*/ // 2 children in Scope |
| 6757 | /* 12781*/ OPC_RecordChild1, // #1 = $rhs |
| 6758 | /* 12782*/ OPC_SwitchType /*2 cases */, 8, MVT::i32,// ->12793 |
| 6759 | /* 12785*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::AND_I32), 0, |
| 6760 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 6761 | // Src: (and:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 6762 | // Dst: (AND_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 6763 | /* 12793*/ /*SwitchType*/ 8, MVT::i64,// ->12803 |
| 6764 | /* 12795*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::AND_I64), 0, |
| 6765 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 6766 | // Src: (and:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 6767 | // Dst: (AND_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 6768 | /* 12803*/ 0, // EndSwitchType |
| 6769 | /* 12804*/ /*Scope*/ 70, /*->12875*/ |
| 6770 | /* 12805*/ OPC_MoveChild1, |
| 6771 | /* 12806*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 6772 | /* 12809*/ OPC_Scope, 47, /*->12858*/ // 2 children in Scope |
| 6773 | /* 12811*/ OPC_RecordChild0, // #1 = $rhs |
| 6774 | /* 12812*/ OPC_MoveChild1, |
| 6775 | /* 12813*/ OPC_CheckImmAllOnesV, |
| 6776 | /* 12814*/ OPC_MoveParent, |
| 6777 | /* 12815*/ OPC_MoveParent, |
| 6778 | /* 12816*/ OPC_SwitchType /*4 cases */, 8, MVT::v16i8,// ->12827 |
| 6779 | /* 12819*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6780 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 6781 | // Src: (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, (xor:{ *:[v16i8] } V128:{ *:[v16i8] }:$rhs, immAllOnesV:{ *:[v16i8] })) - Complexity = 10 |
| 6782 | // Dst: (ANDNOT:{ *:[v16i8] } ?:{ *:[v16i8] }:$lhs, ?:{ *:[v16i8] }:$rhs) |
| 6783 | /* 12827*/ /*SwitchType*/ 8, MVT::v8i16,// ->12837 |
| 6784 | /* 12829*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6785 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 6786 | // Src: (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, (xor:{ *:[v8i16] } V128:{ *:[v8i16] }:$rhs, immAllOnesV:{ *:[v8i16] })) - Complexity = 10 |
| 6787 | // Dst: (ANDNOT:{ *:[v8i16] } ?:{ *:[v8i16] }:$lhs, ?:{ *:[v8i16] }:$rhs) |
| 6788 | /* 12837*/ /*SwitchType*/ 8, MVT::v4i32,// ->12847 |
| 6789 | /* 12839*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6790 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 6791 | // Src: (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, (xor:{ *:[v4i32] } V128:{ *:[v4i32] }:$rhs, immAllOnesV:{ *:[v4i32] })) - Complexity = 10 |
| 6792 | // Dst: (ANDNOT:{ *:[v4i32] } ?:{ *:[v4i32] }:$lhs, ?:{ *:[v4i32] }:$rhs) |
| 6793 | /* 12847*/ /*SwitchType*/ 8, MVT::v2i64,// ->12857 |
| 6794 | /* 12849*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6795 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 6796 | // Src: (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$lhs, (xor:{ *:[v2i64] } V128:{ *:[v2i64] }:$rhs, immAllOnesV:{ *:[v2i64] })) - Complexity = 10 |
| 6797 | // Dst: (ANDNOT:{ *:[v2i64] } ?:{ *:[v2i64] }:$lhs, ?:{ *:[v2i64] }:$rhs) |
| 6798 | /* 12857*/ 0, // EndSwitchType |
| 6799 | /* 12858*/ /*Scope*/ 15, /*->12874*/ |
| 6800 | /* 12859*/ OPC_MoveChild0, |
| 6801 | /* 12860*/ OPC_CheckImmAllOnesV, |
| 6802 | /* 12861*/ OPC_MoveParent, |
| 6803 | /* 12862*/ OPC_RecordChild1, // #1 = $rhs |
| 6804 | /* 12863*/ OPC_MoveParent, |
| 6805 | /* 12864*/ OPC_CheckType, MVT::v16i8, |
| 6806 | /* 12866*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6807 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 6808 | // Src: (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, (xor:{ *:[v16i8] } immAllOnesV:{ *:[v16i8] }, V128:{ *:[v16i8] }:$rhs)) - Complexity = 10 |
| 6809 | // Dst: (ANDNOT:{ *:[v16i8] } ?:{ *:[v16i8] }:$lhs, ?:{ *:[v16i8] }:$rhs) |
| 6810 | /* 12874*/ 0, /*End of Scope*/ |
| 6811 | /* 12875*/ 0, /*End of Scope*/ |
| 6812 | /* 12876*/ /*Scope*/ 40, /*->12917*/ |
| 6813 | /* 12877*/ OPC_MoveChild0, |
| 6814 | /* 12878*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 6815 | /* 12881*/ OPC_Scope, 16, /*->12899*/ // 2 children in Scope |
| 6816 | /* 12883*/ OPC_RecordChild0, // #0 = $rhs |
| 6817 | /* 12884*/ OPC_MoveChild1, |
| 6818 | /* 12885*/ OPC_CheckImmAllOnesV, |
| 6819 | /* 12886*/ OPC_MoveParent, |
| 6820 | /* 12887*/ OPC_MoveParent, |
| 6821 | /* 12888*/ OPC_RecordChild1, // #1 = $lhs |
| 6822 | /* 12889*/ OPC_CheckType, MVT::v16i8, |
| 6823 | /* 12891*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6824 | MVT::v16i8, 2/*#Ops*/, 1, 0, |
| 6825 | // Src: (and:{ *:[v16i8] } (xor:{ *:[v16i8] } V128:{ *:[v16i8] }:$rhs, immAllOnesV:{ *:[v16i8] }), V128:{ *:[v16i8] }:$lhs) - Complexity = 10 |
| 6826 | // Dst: (ANDNOT:{ *:[v16i8] } ?:{ *:[v16i8] }:$lhs, ?:{ *:[v16i8] }:$rhs) |
| 6827 | /* 12899*/ /*Scope*/ 16, /*->12916*/ |
| 6828 | /* 12900*/ OPC_MoveChild0, |
| 6829 | /* 12901*/ OPC_CheckImmAllOnesV, |
| 6830 | /* 12902*/ OPC_MoveParent, |
| 6831 | /* 12903*/ OPC_RecordChild1, // #0 = $rhs |
| 6832 | /* 12904*/ OPC_MoveParent, |
| 6833 | /* 12905*/ OPC_RecordChild1, // #1 = $lhs |
| 6834 | /* 12906*/ OPC_CheckType, MVT::v16i8, |
| 6835 | /* 12908*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6836 | MVT::v16i8, 2/*#Ops*/, 1, 0, |
| 6837 | // Src: (and:{ *:[v16i8] } (xor:{ *:[v16i8] } immAllOnesV:{ *:[v16i8] }, V128:{ *:[v16i8] }:$rhs), V128:{ *:[v16i8] }:$lhs) - Complexity = 10 |
| 6838 | // Dst: (ANDNOT:{ *:[v16i8] } ?:{ *:[v16i8] }:$lhs, ?:{ *:[v16i8] }:$rhs) |
| 6839 | /* 12916*/ 0, /*End of Scope*/ |
| 6840 | /* 12917*/ /*Scope*/ 20, /*->12938*/ |
| 6841 | /* 12918*/ OPC_RecordChild0, // #0 = $lhs |
| 6842 | /* 12919*/ OPC_MoveChild1, |
| 6843 | /* 12920*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 6844 | /* 12923*/ OPC_MoveChild0, |
| 6845 | /* 12924*/ OPC_CheckImmAllOnesV, |
| 6846 | /* 12925*/ OPC_MoveParent, |
| 6847 | /* 12926*/ OPC_RecordChild1, // #1 = $rhs |
| 6848 | /* 12927*/ OPC_MoveParent, |
| 6849 | /* 12928*/ OPC_CheckType, MVT::v8i16, |
| 6850 | /* 12930*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6851 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 6852 | // Src: (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, (xor:{ *:[v8i16] } immAllOnesV:{ *:[v8i16] }, V128:{ *:[v8i16] }:$rhs)) - Complexity = 10 |
| 6853 | // Dst: (ANDNOT:{ *:[v8i16] } ?:{ *:[v8i16] }:$lhs, ?:{ *:[v8i16] }:$rhs) |
| 6854 | /* 12938*/ /*Scope*/ 40, /*->12979*/ |
| 6855 | /* 12939*/ OPC_MoveChild0, |
| 6856 | /* 12940*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 6857 | /* 12943*/ OPC_Scope, 16, /*->12961*/ // 2 children in Scope |
| 6858 | /* 12945*/ OPC_RecordChild0, // #0 = $rhs |
| 6859 | /* 12946*/ OPC_MoveChild1, |
| 6860 | /* 12947*/ OPC_CheckImmAllOnesV, |
| 6861 | /* 12948*/ OPC_MoveParent, |
| 6862 | /* 12949*/ OPC_MoveParent, |
| 6863 | /* 12950*/ OPC_RecordChild1, // #1 = $lhs |
| 6864 | /* 12951*/ OPC_CheckType, MVT::v8i16, |
| 6865 | /* 12953*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6866 | MVT::v8i16, 2/*#Ops*/, 1, 0, |
| 6867 | // Src: (and:{ *:[v8i16] } (xor:{ *:[v8i16] } V128:{ *:[v8i16] }:$rhs, immAllOnesV:{ *:[v8i16] }), V128:{ *:[v8i16] }:$lhs) - Complexity = 10 |
| 6868 | // Dst: (ANDNOT:{ *:[v8i16] } ?:{ *:[v8i16] }:$lhs, ?:{ *:[v8i16] }:$rhs) |
| 6869 | /* 12961*/ /*Scope*/ 16, /*->12978*/ |
| 6870 | /* 12962*/ OPC_MoveChild0, |
| 6871 | /* 12963*/ OPC_CheckImmAllOnesV, |
| 6872 | /* 12964*/ OPC_MoveParent, |
| 6873 | /* 12965*/ OPC_RecordChild1, // #0 = $rhs |
| 6874 | /* 12966*/ OPC_MoveParent, |
| 6875 | /* 12967*/ OPC_RecordChild1, // #1 = $lhs |
| 6876 | /* 12968*/ OPC_CheckType, MVT::v8i16, |
| 6877 | /* 12970*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6878 | MVT::v8i16, 2/*#Ops*/, 1, 0, |
| 6879 | // Src: (and:{ *:[v8i16] } (xor:{ *:[v8i16] } immAllOnesV:{ *:[v8i16] }, V128:{ *:[v8i16] }:$rhs), V128:{ *:[v8i16] }:$lhs) - Complexity = 10 |
| 6880 | // Dst: (ANDNOT:{ *:[v8i16] } ?:{ *:[v8i16] }:$lhs, ?:{ *:[v8i16] }:$rhs) |
| 6881 | /* 12978*/ 0, /*End of Scope*/ |
| 6882 | /* 12979*/ /*Scope*/ 20, /*->13000*/ |
| 6883 | /* 12980*/ OPC_RecordChild0, // #0 = $lhs |
| 6884 | /* 12981*/ OPC_MoveChild1, |
| 6885 | /* 12982*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 6886 | /* 12985*/ OPC_MoveChild0, |
| 6887 | /* 12986*/ OPC_CheckImmAllOnesV, |
| 6888 | /* 12987*/ OPC_MoveParent, |
| 6889 | /* 12988*/ OPC_RecordChild1, // #1 = $rhs |
| 6890 | /* 12989*/ OPC_MoveParent, |
| 6891 | /* 12990*/ OPC_CheckType, MVT::v4i32, |
| 6892 | /* 12992*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6893 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 6894 | // Src: (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, (xor:{ *:[v4i32] } immAllOnesV:{ *:[v4i32] }, V128:{ *:[v4i32] }:$rhs)) - Complexity = 10 |
| 6895 | // Dst: (ANDNOT:{ *:[v4i32] } ?:{ *:[v4i32] }:$lhs, ?:{ *:[v4i32] }:$rhs) |
| 6896 | /* 13000*/ /*Scope*/ 40, /*->13041*/ |
| 6897 | /* 13001*/ OPC_MoveChild0, |
| 6898 | /* 13002*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 6899 | /* 13005*/ OPC_Scope, 16, /*->13023*/ // 2 children in Scope |
| 6900 | /* 13007*/ OPC_RecordChild0, // #0 = $rhs |
| 6901 | /* 13008*/ OPC_MoveChild1, |
| 6902 | /* 13009*/ OPC_CheckImmAllOnesV, |
| 6903 | /* 13010*/ OPC_MoveParent, |
| 6904 | /* 13011*/ OPC_MoveParent, |
| 6905 | /* 13012*/ OPC_RecordChild1, // #1 = $lhs |
| 6906 | /* 13013*/ OPC_CheckType, MVT::v4i32, |
| 6907 | /* 13015*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6908 | MVT::v4i32, 2/*#Ops*/, 1, 0, |
| 6909 | // Src: (and:{ *:[v4i32] } (xor:{ *:[v4i32] } V128:{ *:[v4i32] }:$rhs, immAllOnesV:{ *:[v4i32] }), V128:{ *:[v4i32] }:$lhs) - Complexity = 10 |
| 6910 | // Dst: (ANDNOT:{ *:[v4i32] } ?:{ *:[v4i32] }:$lhs, ?:{ *:[v4i32] }:$rhs) |
| 6911 | /* 13023*/ /*Scope*/ 16, /*->13040*/ |
| 6912 | /* 13024*/ OPC_MoveChild0, |
| 6913 | /* 13025*/ OPC_CheckImmAllOnesV, |
| 6914 | /* 13026*/ OPC_MoveParent, |
| 6915 | /* 13027*/ OPC_RecordChild1, // #0 = $rhs |
| 6916 | /* 13028*/ OPC_MoveParent, |
| 6917 | /* 13029*/ OPC_RecordChild1, // #1 = $lhs |
| 6918 | /* 13030*/ OPC_CheckType, MVT::v4i32, |
| 6919 | /* 13032*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6920 | MVT::v4i32, 2/*#Ops*/, 1, 0, |
| 6921 | // Src: (and:{ *:[v4i32] } (xor:{ *:[v4i32] } immAllOnesV:{ *:[v4i32] }, V128:{ *:[v4i32] }:$rhs), V128:{ *:[v4i32] }:$lhs) - Complexity = 10 |
| 6922 | // Dst: (ANDNOT:{ *:[v4i32] } ?:{ *:[v4i32] }:$lhs, ?:{ *:[v4i32] }:$rhs) |
| 6923 | /* 13040*/ 0, /*End of Scope*/ |
| 6924 | /* 13041*/ /*Scope*/ 20, /*->13062*/ |
| 6925 | /* 13042*/ OPC_RecordChild0, // #0 = $lhs |
| 6926 | /* 13043*/ OPC_MoveChild1, |
| 6927 | /* 13044*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 6928 | /* 13047*/ OPC_MoveChild0, |
| 6929 | /* 13048*/ OPC_CheckImmAllOnesV, |
| 6930 | /* 13049*/ OPC_MoveParent, |
| 6931 | /* 13050*/ OPC_RecordChild1, // #1 = $rhs |
| 6932 | /* 13051*/ OPC_MoveParent, |
| 6933 | /* 13052*/ OPC_CheckType, MVT::v2i64, |
| 6934 | /* 13054*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6935 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 6936 | // Src: (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$lhs, (xor:{ *:[v2i64] } immAllOnesV:{ *:[v2i64] }, V128:{ *:[v2i64] }:$rhs)) - Complexity = 10 |
| 6937 | // Dst: (ANDNOT:{ *:[v2i64] } ?:{ *:[v2i64] }:$lhs, ?:{ *:[v2i64] }:$rhs) |
| 6938 | /* 13062*/ /*Scope*/ 40, /*->13103*/ |
| 6939 | /* 13063*/ OPC_MoveChild0, |
| 6940 | /* 13064*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 6941 | /* 13067*/ OPC_Scope, 16, /*->13085*/ // 2 children in Scope |
| 6942 | /* 13069*/ OPC_RecordChild0, // #0 = $rhs |
| 6943 | /* 13070*/ OPC_MoveChild1, |
| 6944 | /* 13071*/ OPC_CheckImmAllOnesV, |
| 6945 | /* 13072*/ OPC_MoveParent, |
| 6946 | /* 13073*/ OPC_MoveParent, |
| 6947 | /* 13074*/ OPC_RecordChild1, // #1 = $lhs |
| 6948 | /* 13075*/ OPC_CheckType, MVT::v2i64, |
| 6949 | /* 13077*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6950 | MVT::v2i64, 2/*#Ops*/, 1, 0, |
| 6951 | // Src: (and:{ *:[v2i64] } (xor:{ *:[v2i64] } V128:{ *:[v2i64] }:$rhs, immAllOnesV:{ *:[v2i64] }), V128:{ *:[v2i64] }:$lhs) - Complexity = 10 |
| 6952 | // Dst: (ANDNOT:{ *:[v2i64] } ?:{ *:[v2i64] }:$lhs, ?:{ *:[v2i64] }:$rhs) |
| 6953 | /* 13085*/ /*Scope*/ 16, /*->13102*/ |
| 6954 | /* 13086*/ OPC_MoveChild0, |
| 6955 | /* 13087*/ OPC_CheckImmAllOnesV, |
| 6956 | /* 13088*/ OPC_MoveParent, |
| 6957 | /* 13089*/ OPC_RecordChild1, // #0 = $rhs |
| 6958 | /* 13090*/ OPC_MoveParent, |
| 6959 | /* 13091*/ OPC_RecordChild1, // #1 = $lhs |
| 6960 | /* 13092*/ OPC_CheckType, MVT::v2i64, |
| 6961 | /* 13094*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANDNOT), 0, |
| 6962 | MVT::v2i64, 2/*#Ops*/, 1, 0, |
| 6963 | // Src: (and:{ *:[v2i64] } (xor:{ *:[v2i64] } immAllOnesV:{ *:[v2i64] }, V128:{ *:[v2i64] }:$rhs), V128:{ *:[v2i64] }:$lhs) - Complexity = 10 |
| 6964 | // Dst: (ANDNOT:{ *:[v2i64] } ?:{ *:[v2i64] }:$lhs, ?:{ *:[v2i64] }:$rhs) |
| 6965 | /* 13102*/ 0, /*End of Scope*/ |
| 6966 | /* 13103*/ /*Scope*/ 44, /*->13148*/ |
| 6967 | /* 13104*/ OPC_RecordChild0, // #0 = $lhs |
| 6968 | /* 13105*/ OPC_RecordChild1, // #1 = $rhs |
| 6969 | /* 13106*/ OPC_SwitchType /*4 cases */, 8, MVT::v16i8,// ->13117 |
| 6970 | /* 13109*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::AND), 0, |
| 6971 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 6972 | // Src: (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 3 |
| 6973 | // Dst: (AND:{ *:[v16i8] } ?:{ *:[v16i8] }:$lhs, ?:{ *:[v16i8] }:$rhs) |
| 6974 | /* 13117*/ /*SwitchType*/ 8, MVT::v8i16,// ->13127 |
| 6975 | /* 13119*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::AND), 0, |
| 6976 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 6977 | // Src: (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 6978 | // Dst: (AND:{ *:[v8i16] } ?:{ *:[v8i16] }:$lhs, ?:{ *:[v8i16] }:$rhs) |
| 6979 | /* 13127*/ /*SwitchType*/ 8, MVT::v4i32,// ->13137 |
| 6980 | /* 13129*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::AND), 0, |
| 6981 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 6982 | // Src: (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 3 |
| 6983 | // Dst: (AND:{ *:[v4i32] } ?:{ *:[v4i32] }:$lhs, ?:{ *:[v4i32] }:$rhs) |
| 6984 | /* 13137*/ /*SwitchType*/ 8, MVT::v2i64,// ->13147 |
| 6985 | /* 13139*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::AND), 0, |
| 6986 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 6987 | // Src: (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) - Complexity = 3 |
| 6988 | // Dst: (AND:{ *:[v2i64] } ?:{ *:[v2i64] }:$lhs, ?:{ *:[v2i64] }:$rhs) |
| 6989 | /* 13147*/ 0, // EndSwitchType |
| 6990 | /* 13148*/ 0, /*End of Scope*/ |
| 6991 | /* 13149*/ /*SwitchOpcode*/ 34|128,29/*3746*/, TARGET_VAL(ISD::ZERO_EXTEND),// ->16899 |
| 6992 | /* 13153*/ OPC_Scope, 21|128,29/*3733*/, /*->16889*/ // 2 children in Scope |
| 6993 | /* 13156*/ OPC_MoveChild0, |
| 6994 | /* 13157*/ OPC_SwitchOpcode /*9 cases */, 89|128,5/*729*/, TARGET_VAL(ISD::AssertZext),// ->13891 |
| 6995 | /* 13162*/ OPC_MoveChild0, |
| 6996 | /* 13163*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| 6997 | /* 13166*/ OPC_RecordMemRef, |
| 6998 | /* 13167*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 6999 | /* 13168*/ OPC_CheckFoldableChainNode, |
| 7000 | /* 13169*/ OPC_Scope, 60|128,3/*444*/, /*->13616*/ // 2 children in Scope |
| 7001 | /* 13172*/ OPC_MoveChild1, |
| 7002 | /* 13173*/ OPC_SwitchOpcode /*3 cases */, 13|128,1/*141*/, TARGET_VAL(ISD::ADD),// ->13319 |
| 7003 | /* 13178*/ OPC_RecordChild0, // #1 = $addr |
| 7004 | /* 13179*/ OPC_RecordChild1, // #2 = $off |
| 7005 | /* 13180*/ OPC_MoveChild1, |
| 7006 | /* 13181*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7007 | /* 13184*/ OPC_MoveParent, |
| 7008 | /* 13185*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 7009 | /* 13187*/ OPC_SwitchType /*2 cases */, 63, MVT::i32,// ->13253 |
| 7010 | /* 13190*/ OPC_MoveParent, |
| 7011 | /* 13191*/ OPC_MoveChild2, |
| 7012 | /* 13192*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7013 | /* 13195*/ OPC_RecordChild0, // #3 = $exp |
| 7014 | /* 13196*/ OPC_MoveParent, |
| 7015 | /* 13197*/ OPC_MoveChild3, |
| 7016 | /* 13198*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7017 | /* 13201*/ OPC_RecordChild0, // #4 = $new |
| 7018 | /* 13202*/ OPC_MoveParent, |
| 7019 | /* 13203*/ OPC_Scope, 23, /*->13228*/ // 2 children in Scope |
| 7020 | /* 13205*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 7021 | /* 13207*/ OPC_MoveParent, |
| 7022 | /* 13208*/ OPC_MoveParent, |
| 7023 | /* 13209*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7024 | /* 13211*/ OPC_EmitMergeInputChains1_0, |
| 7025 | /* 13212*/ OPC_EmitInteger, MVT::i32, 0, |
| 7026 | /* 13215*/ OPC_EmitConvertToTarget, 2, |
| 7027 | /* 13217*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7028 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 7029 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 23 |
| 7030 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7031 | /* 13228*/ /*Scope*/ 23, /*->13252*/ |
| 7032 | /* 13229*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 7033 | /* 13231*/ OPC_MoveParent, |
| 7034 | /* 13232*/ OPC_MoveParent, |
| 7035 | /* 13233*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7036 | /* 13235*/ OPC_EmitMergeInputChains1_0, |
| 7037 | /* 13236*/ OPC_EmitInteger, MVT::i32, 0, |
| 7038 | /* 13239*/ OPC_EmitConvertToTarget, 2, |
| 7039 | /* 13241*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7040 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 7041 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 23 |
| 7042 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7043 | /* 13252*/ 0, /*End of Scope*/ |
| 7044 | /* 13253*/ /*SwitchType*/ 63, MVT::i64,// ->13318 |
| 7045 | /* 13255*/ OPC_MoveParent, |
| 7046 | /* 13256*/ OPC_MoveChild2, |
| 7047 | /* 13257*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7048 | /* 13260*/ OPC_RecordChild0, // #3 = $exp |
| 7049 | /* 13261*/ OPC_MoveParent, |
| 7050 | /* 13262*/ OPC_MoveChild3, |
| 7051 | /* 13263*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7052 | /* 13266*/ OPC_RecordChild0, // #4 = $new |
| 7053 | /* 13267*/ OPC_MoveParent, |
| 7054 | /* 13268*/ OPC_Scope, 23, /*->13293*/ // 2 children in Scope |
| 7055 | /* 13270*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 7056 | /* 13272*/ OPC_MoveParent, |
| 7057 | /* 13273*/ OPC_MoveParent, |
| 7058 | /* 13274*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7059 | /* 13276*/ OPC_EmitMergeInputChains1_0, |
| 7060 | /* 13277*/ OPC_EmitInteger, MVT::i32, 0, |
| 7061 | /* 13280*/ OPC_EmitConvertToTarget, 2, |
| 7062 | /* 13282*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7063 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 7064 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 23 |
| 7065 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7066 | /* 13293*/ /*Scope*/ 23, /*->13317*/ |
| 7067 | /* 13294*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 7068 | /* 13296*/ OPC_MoveParent, |
| 7069 | /* 13297*/ OPC_MoveParent, |
| 7070 | /* 13298*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7071 | /* 13300*/ OPC_EmitMergeInputChains1_0, |
| 7072 | /* 13301*/ OPC_EmitInteger, MVT::i32, 0, |
| 7073 | /* 13304*/ OPC_EmitConvertToTarget, 2, |
| 7074 | /* 13306*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7075 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 7076 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 23 |
| 7077 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7078 | /* 13317*/ 0, /*End of Scope*/ |
| 7079 | /* 13318*/ 0, // EndSwitchType |
| 7080 | /* 13319*/ /*SwitchOpcode*/ 13|128,1/*141*/, TARGET_VAL(ISD::OR),// ->13464 |
| 7081 | /* 13323*/ OPC_RecordChild0, // #1 = $addr |
| 7082 | /* 13324*/ OPC_RecordChild1, // #2 = $off |
| 7083 | /* 13325*/ OPC_MoveChild1, |
| 7084 | /* 13326*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7085 | /* 13329*/ OPC_MoveParent, |
| 7086 | /* 13330*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 7087 | /* 13332*/ OPC_SwitchType /*2 cases */, 63, MVT::i32,// ->13398 |
| 7088 | /* 13335*/ OPC_MoveParent, |
| 7089 | /* 13336*/ OPC_MoveChild2, |
| 7090 | /* 13337*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7091 | /* 13340*/ OPC_RecordChild0, // #3 = $exp |
| 7092 | /* 13341*/ OPC_MoveParent, |
| 7093 | /* 13342*/ OPC_MoveChild3, |
| 7094 | /* 13343*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7095 | /* 13346*/ OPC_RecordChild0, // #4 = $new |
| 7096 | /* 13347*/ OPC_MoveParent, |
| 7097 | /* 13348*/ OPC_Scope, 23, /*->13373*/ // 2 children in Scope |
| 7098 | /* 13350*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 7099 | /* 13352*/ OPC_MoveParent, |
| 7100 | /* 13353*/ OPC_MoveParent, |
| 7101 | /* 13354*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7102 | /* 13356*/ OPC_EmitMergeInputChains1_0, |
| 7103 | /* 13357*/ OPC_EmitInteger, MVT::i32, 0, |
| 7104 | /* 13360*/ OPC_EmitConvertToTarget, 2, |
| 7105 | /* 13362*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7106 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 7107 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 23 |
| 7108 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7109 | /* 13373*/ /*Scope*/ 23, /*->13397*/ |
| 7110 | /* 13374*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 7111 | /* 13376*/ OPC_MoveParent, |
| 7112 | /* 13377*/ OPC_MoveParent, |
| 7113 | /* 13378*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7114 | /* 13380*/ OPC_EmitMergeInputChains1_0, |
| 7115 | /* 13381*/ OPC_EmitInteger, MVT::i32, 0, |
| 7116 | /* 13384*/ OPC_EmitConvertToTarget, 2, |
| 7117 | /* 13386*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7118 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 7119 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 23 |
| 7120 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7121 | /* 13397*/ 0, /*End of Scope*/ |
| 7122 | /* 13398*/ /*SwitchType*/ 63, MVT::i64,// ->13463 |
| 7123 | /* 13400*/ OPC_MoveParent, |
| 7124 | /* 13401*/ OPC_MoveChild2, |
| 7125 | /* 13402*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7126 | /* 13405*/ OPC_RecordChild0, // #3 = $exp |
| 7127 | /* 13406*/ OPC_MoveParent, |
| 7128 | /* 13407*/ OPC_MoveChild3, |
| 7129 | /* 13408*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7130 | /* 13411*/ OPC_RecordChild0, // #4 = $new |
| 7131 | /* 13412*/ OPC_MoveParent, |
| 7132 | /* 13413*/ OPC_Scope, 23, /*->13438*/ // 2 children in Scope |
| 7133 | /* 13415*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 7134 | /* 13417*/ OPC_MoveParent, |
| 7135 | /* 13418*/ OPC_MoveParent, |
| 7136 | /* 13419*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7137 | /* 13421*/ OPC_EmitMergeInputChains1_0, |
| 7138 | /* 13422*/ OPC_EmitInteger, MVT::i32, 0, |
| 7139 | /* 13425*/ OPC_EmitConvertToTarget, 2, |
| 7140 | /* 13427*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7141 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 7142 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 23 |
| 7143 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7144 | /* 13438*/ /*Scope*/ 23, /*->13462*/ |
| 7145 | /* 13439*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 7146 | /* 13441*/ OPC_MoveParent, |
| 7147 | /* 13442*/ OPC_MoveParent, |
| 7148 | /* 13443*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7149 | /* 13445*/ OPC_EmitMergeInputChains1_0, |
| 7150 | /* 13446*/ OPC_EmitInteger, MVT::i32, 0, |
| 7151 | /* 13449*/ OPC_EmitConvertToTarget, 2, |
| 7152 | /* 13451*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7153 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 7154 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 23 |
| 7155 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7156 | /* 13462*/ 0, /*End of Scope*/ |
| 7157 | /* 13463*/ 0, // EndSwitchType |
| 7158 | /* 13464*/ /*SwitchOpcode*/ 19|128,1/*147*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->13615 |
| 7159 | /* 13468*/ OPC_RecordChild0, // #1 = $off |
| 7160 | /* 13469*/ OPC_MoveChild0, |
| 7161 | /* 13470*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 7162 | /* 13473*/ OPC_MoveParent, |
| 7163 | /* 13474*/ OPC_MoveParent, |
| 7164 | /* 13475*/ OPC_MoveChild2, |
| 7165 | /* 13476*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7166 | /* 13479*/ OPC_RecordChild0, // #2 = $exp |
| 7167 | /* 13480*/ OPC_MoveParent, |
| 7168 | /* 13481*/ OPC_MoveChild3, |
| 7169 | /* 13482*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7170 | /* 13485*/ OPC_RecordChild0, // #3 = $new |
| 7171 | /* 13486*/ OPC_MoveParent, |
| 7172 | /* 13487*/ OPC_Scope, 62, /*->13551*/ // 2 children in Scope |
| 7173 | /* 13489*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 7174 | /* 13491*/ OPC_MoveParent, |
| 7175 | /* 13492*/ OPC_MoveParent, |
| 7176 | /* 13493*/ OPC_Scope, 27, /*->13522*/ // 2 children in Scope |
| 7177 | /* 13495*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 7178 | /* 13497*/ OPC_EmitMergeInputChains1_0, |
| 7179 | /* 13498*/ OPC_EmitInteger, MVT::i32, 0, |
| 7180 | /* 13501*/ OPC_EmitInteger, MVT::i32, 0, |
| 7181 | /* 13504*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 7182 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 7183 | /* 13511*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7184 | MVT::i64, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 7185 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 22 |
| 7186 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7187 | /* 13522*/ /*Scope*/ 27, /*->13550*/ |
| 7188 | /* 13523*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 7189 | /* 13525*/ OPC_EmitMergeInputChains1_0, |
| 7190 | /* 13526*/ OPC_EmitInteger, MVT::i32, 0, |
| 7191 | /* 13529*/ OPC_EmitInteger, MVT::i64, 0, |
| 7192 | /* 13532*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 7193 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 7194 | /* 13539*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7195 | MVT::i64, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 7196 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 22 |
| 7197 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7198 | /* 13550*/ 0, /*End of Scope*/ |
| 7199 | /* 13551*/ /*Scope*/ 62, /*->13614*/ |
| 7200 | /* 13552*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 7201 | /* 13554*/ OPC_MoveParent, |
| 7202 | /* 13555*/ OPC_MoveParent, |
| 7203 | /* 13556*/ OPC_Scope, 27, /*->13585*/ // 2 children in Scope |
| 7204 | /* 13558*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 7205 | /* 13560*/ OPC_EmitMergeInputChains1_0, |
| 7206 | /* 13561*/ OPC_EmitInteger, MVT::i32, 0, |
| 7207 | /* 13564*/ OPC_EmitInteger, MVT::i32, 0, |
| 7208 | /* 13567*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 7209 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 7210 | /* 13574*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7211 | MVT::i64, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 7212 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 22 |
| 7213 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7214 | /* 13585*/ /*Scope*/ 27, /*->13613*/ |
| 7215 | /* 13586*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 7216 | /* 13588*/ OPC_EmitMergeInputChains1_0, |
| 7217 | /* 13589*/ OPC_EmitInteger, MVT::i32, 0, |
| 7218 | /* 13592*/ OPC_EmitInteger, MVT::i64, 0, |
| 7219 | /* 13595*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 7220 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 7221 | /* 13602*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7222 | MVT::i64, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 7223 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 22 |
| 7224 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7225 | /* 13613*/ 0, /*End of Scope*/ |
| 7226 | /* 13614*/ 0, /*End of Scope*/ |
| 7227 | /* 13615*/ 0, // EndSwitchOpcode |
| 7228 | /* 13616*/ /*Scope*/ 16|128,2/*272*/, /*->13890*/ |
| 7229 | /* 13618*/ OPC_RecordChild1, // #1 = $off |
| 7230 | /* 13619*/ OPC_Scope, 5|128,1/*133*/, /*->13755*/ // 3 children in Scope |
| 7231 | /* 13622*/ OPC_MoveChild1, |
| 7232 | /* 13623*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7233 | /* 13626*/ OPC_MoveParent, |
| 7234 | /* 13627*/ OPC_MoveChild2, |
| 7235 | /* 13628*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7236 | /* 13631*/ OPC_RecordChild0, // #2 = $exp |
| 7237 | /* 13632*/ OPC_MoveParent, |
| 7238 | /* 13633*/ OPC_MoveChild3, |
| 7239 | /* 13634*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7240 | /* 13637*/ OPC_RecordChild0, // #3 = $new |
| 7241 | /* 13638*/ OPC_MoveParent, |
| 7242 | /* 13639*/ OPC_Scope, 56, /*->13697*/ // 2 children in Scope |
| 7243 | /* 13641*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 7244 | /* 13643*/ OPC_MoveParent, |
| 7245 | /* 13644*/ OPC_MoveParent, |
| 7246 | /* 13645*/ OPC_EmitMergeInputChains1_0, |
| 7247 | /* 13646*/ OPC_EmitInteger, MVT::i32, 0, |
| 7248 | /* 13649*/ OPC_EmitConvertToTarget, 1, |
| 7249 | /* 13651*/ OPC_Scope, 21, /*->13674*/ // 2 children in Scope |
| 7250 | /* 13653*/ OPC_EmitInteger, MVT::i32, 0, |
| 7251 | /* 13656*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 7252 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 7253 | /* 13663*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7254 | MVT::i64, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 7255 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 19 |
| 7256 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7257 | /* 13674*/ /*Scope*/ 21, /*->13696*/ |
| 7258 | /* 13675*/ OPC_EmitInteger, MVT::i64, 0, |
| 7259 | /* 13678*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 7260 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 7261 | /* 13685*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7262 | MVT::i64, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 7263 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 19 |
| 7264 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7265 | /* 13696*/ 0, /*End of Scope*/ |
| 7266 | /* 13697*/ /*Scope*/ 56, /*->13754*/ |
| 7267 | /* 13698*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 7268 | /* 13700*/ OPC_MoveParent, |
| 7269 | /* 13701*/ OPC_MoveParent, |
| 7270 | /* 13702*/ OPC_EmitMergeInputChains1_0, |
| 7271 | /* 13703*/ OPC_EmitInteger, MVT::i32, 0, |
| 7272 | /* 13706*/ OPC_EmitConvertToTarget, 1, |
| 7273 | /* 13708*/ OPC_Scope, 21, /*->13731*/ // 2 children in Scope |
| 7274 | /* 13710*/ OPC_EmitInteger, MVT::i32, 0, |
| 7275 | /* 13713*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 7276 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 7277 | /* 13720*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7278 | MVT::i64, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 7279 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 19 |
| 7280 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7281 | /* 13731*/ /*Scope*/ 21, /*->13753*/ |
| 7282 | /* 13732*/ OPC_EmitInteger, MVT::i64, 0, |
| 7283 | /* 13735*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 7284 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 7285 | /* 13742*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7286 | MVT::i64, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 7287 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 19 |
| 7288 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7289 | /* 13753*/ 0, /*End of Scope*/ |
| 7290 | /* 13754*/ 0, /*End of Scope*/ |
| 7291 | /* 13755*/ /*Scope*/ 66, /*->13822*/ |
| 7292 | /* 13756*/ OPC_CheckChild1Type, MVT::i32, |
| 7293 | /* 13758*/ OPC_MoveChild2, |
| 7294 | /* 13759*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7295 | /* 13762*/ OPC_RecordChild0, // #2 = $exp |
| 7296 | /* 13763*/ OPC_MoveParent, |
| 7297 | /* 13764*/ OPC_MoveChild3, |
| 7298 | /* 13765*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7299 | /* 13768*/ OPC_RecordChild0, // #3 = $new |
| 7300 | /* 13769*/ OPC_MoveParent, |
| 7301 | /* 13770*/ OPC_Scope, 24, /*->13796*/ // 2 children in Scope |
| 7302 | /* 13772*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 7303 | /* 13774*/ OPC_MoveParent, |
| 7304 | /* 13775*/ OPC_MoveParent, |
| 7305 | /* 13776*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7306 | /* 13778*/ OPC_EmitMergeInputChains1_0, |
| 7307 | /* 13779*/ OPC_EmitInteger, MVT::i32, 0, |
| 7308 | /* 13782*/ OPC_EmitInteger, MVT::i32, 0, |
| 7309 | /* 13785*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7310 | MVT::i64, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 7311 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 16 |
| 7312 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7313 | /* 13796*/ /*Scope*/ 24, /*->13821*/ |
| 7314 | /* 13797*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 7315 | /* 13799*/ OPC_MoveParent, |
| 7316 | /* 13800*/ OPC_MoveParent, |
| 7317 | /* 13801*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7318 | /* 13803*/ OPC_EmitMergeInputChains1_0, |
| 7319 | /* 13804*/ OPC_EmitInteger, MVT::i32, 0, |
| 7320 | /* 13807*/ OPC_EmitInteger, MVT::i32, 0, |
| 7321 | /* 13810*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7322 | MVT::i64, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 7323 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 16 |
| 7324 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7325 | /* 13821*/ 0, /*End of Scope*/ |
| 7326 | /* 13822*/ /*Scope*/ 66, /*->13889*/ |
| 7327 | /* 13823*/ OPC_CheckChild1Type, MVT::i64, |
| 7328 | /* 13825*/ OPC_MoveChild2, |
| 7329 | /* 13826*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7330 | /* 13829*/ OPC_RecordChild0, // #2 = $exp |
| 7331 | /* 13830*/ OPC_MoveParent, |
| 7332 | /* 13831*/ OPC_MoveChild3, |
| 7333 | /* 13832*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7334 | /* 13835*/ OPC_RecordChild0, // #3 = $new |
| 7335 | /* 13836*/ OPC_MoveParent, |
| 7336 | /* 13837*/ OPC_Scope, 24, /*->13863*/ // 2 children in Scope |
| 7337 | /* 13839*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 7338 | /* 13841*/ OPC_MoveParent, |
| 7339 | /* 13842*/ OPC_MoveParent, |
| 7340 | /* 13843*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7341 | /* 13845*/ OPC_EmitMergeInputChains1_0, |
| 7342 | /* 13846*/ OPC_EmitInteger, MVT::i32, 0, |
| 7343 | /* 13849*/ OPC_EmitInteger, MVT::i64, 0, |
| 7344 | /* 13852*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7345 | MVT::i64, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 7346 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 16 |
| 7347 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7348 | /* 13863*/ /*Scope*/ 24, /*->13888*/ |
| 7349 | /* 13864*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 7350 | /* 13866*/ OPC_MoveParent, |
| 7351 | /* 13867*/ OPC_MoveParent, |
| 7352 | /* 13868*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7353 | /* 13870*/ OPC_EmitMergeInputChains1_0, |
| 7354 | /* 13871*/ OPC_EmitInteger, MVT::i32, 0, |
| 7355 | /* 13874*/ OPC_EmitInteger, MVT::i64, 0, |
| 7356 | /* 13877*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7357 | MVT::i64, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 7358 | // Src: (zext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 16 |
| 7359 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7360 | /* 13888*/ 0, /*End of Scope*/ |
| 7361 | /* 13889*/ 0, /*End of Scope*/ |
| 7362 | /* 13890*/ 0, /*End of Scope*/ |
| 7363 | /* 13891*/ /*SwitchOpcode*/ 38|128,3/*422*/, TARGET_VAL(ISD::ATOMIC_CMP_SWAP),// ->14317 |
| 7364 | /* 13895*/ OPC_RecordMemRef, |
| 7365 | /* 13896*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 7366 | /* 13897*/ OPC_Scope, 6|128,2/*262*/, /*->14162*/ // 2 children in Scope |
| 7367 | /* 13900*/ OPC_MoveChild1, |
| 7368 | /* 13901*/ OPC_SwitchOpcode /*3 cases */, 85, TARGET_VAL(ISD::ADD),// ->13990 |
| 7369 | /* 13905*/ OPC_RecordChild0, // #1 = $addr |
| 7370 | /* 13906*/ OPC_RecordChild1, // #2 = $off |
| 7371 | /* 13907*/ OPC_MoveChild1, |
| 7372 | /* 13908*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7373 | /* 13911*/ OPC_MoveParent, |
| 7374 | /* 13912*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 7375 | /* 13914*/ OPC_SwitchType /*2 cases */, 35, MVT::i32,// ->13952 |
| 7376 | /* 13917*/ OPC_MoveParent, |
| 7377 | /* 13918*/ OPC_MoveChild2, |
| 7378 | /* 13919*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7379 | /* 13922*/ OPC_RecordChild0, // #3 = $exp |
| 7380 | /* 13923*/ OPC_MoveParent, |
| 7381 | /* 13924*/ OPC_MoveChild3, |
| 7382 | /* 13925*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7383 | /* 13928*/ OPC_RecordChild0, // #4 = $new |
| 7384 | /* 13929*/ OPC_MoveParent, |
| 7385 | /* 13930*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 7386 | /* 13932*/ OPC_MoveParent, |
| 7387 | /* 13933*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7388 | /* 13935*/ OPC_EmitMergeInputChains1_0, |
| 7389 | /* 13936*/ OPC_EmitInteger, MVT::i32, 0, |
| 7390 | /* 13939*/ OPC_EmitConvertToTarget, 2, |
| 7391 | /* 13941*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7392 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 7393 | // Src: (zext:{ *:[i64] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_32>>) - Complexity = 20 |
| 7394 | // Dst: (ATOMIC_RMW32_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7395 | /* 13952*/ /*SwitchType*/ 35, MVT::i64,// ->13989 |
| 7396 | /* 13954*/ OPC_MoveParent, |
| 7397 | /* 13955*/ OPC_MoveChild2, |
| 7398 | /* 13956*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7399 | /* 13959*/ OPC_RecordChild0, // #3 = $exp |
| 7400 | /* 13960*/ OPC_MoveParent, |
| 7401 | /* 13961*/ OPC_MoveChild3, |
| 7402 | /* 13962*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7403 | /* 13965*/ OPC_RecordChild0, // #4 = $new |
| 7404 | /* 13966*/ OPC_MoveParent, |
| 7405 | /* 13967*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 7406 | /* 13969*/ OPC_MoveParent, |
| 7407 | /* 13970*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7408 | /* 13972*/ OPC_EmitMergeInputChains1_0, |
| 7409 | /* 13973*/ OPC_EmitInteger, MVT::i32, 0, |
| 7410 | /* 13976*/ OPC_EmitConvertToTarget, 2, |
| 7411 | /* 13978*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7412 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 7413 | // Src: (zext:{ *:[i64] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_32>>) - Complexity = 20 |
| 7414 | // Dst: (ATOMIC_RMW32_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7415 | /* 13989*/ 0, // EndSwitchType |
| 7416 | /* 13990*/ /*SwitchOpcode*/ 85, TARGET_VAL(ISD::OR),// ->14078 |
| 7417 | /* 13993*/ OPC_RecordChild0, // #1 = $addr |
| 7418 | /* 13994*/ OPC_RecordChild1, // #2 = $off |
| 7419 | /* 13995*/ OPC_MoveChild1, |
| 7420 | /* 13996*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7421 | /* 13999*/ OPC_MoveParent, |
| 7422 | /* 14000*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 7423 | /* 14002*/ OPC_SwitchType /*2 cases */, 35, MVT::i32,// ->14040 |
| 7424 | /* 14005*/ OPC_MoveParent, |
| 7425 | /* 14006*/ OPC_MoveChild2, |
| 7426 | /* 14007*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7427 | /* 14010*/ OPC_RecordChild0, // #3 = $exp |
| 7428 | /* 14011*/ OPC_MoveParent, |
| 7429 | /* 14012*/ OPC_MoveChild3, |
| 7430 | /* 14013*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7431 | /* 14016*/ OPC_RecordChild0, // #4 = $new |
| 7432 | /* 14017*/ OPC_MoveParent, |
| 7433 | /* 14018*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 7434 | /* 14020*/ OPC_MoveParent, |
| 7435 | /* 14021*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7436 | /* 14023*/ OPC_EmitMergeInputChains1_0, |
| 7437 | /* 14024*/ OPC_EmitInteger, MVT::i32, 0, |
| 7438 | /* 14027*/ OPC_EmitConvertToTarget, 2, |
| 7439 | /* 14029*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7440 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 7441 | // Src: (zext:{ *:[i64] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_32>>) - Complexity = 20 |
| 7442 | // Dst: (ATOMIC_RMW32_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7443 | /* 14040*/ /*SwitchType*/ 35, MVT::i64,// ->14077 |
| 7444 | /* 14042*/ OPC_MoveParent, |
| 7445 | /* 14043*/ OPC_MoveChild2, |
| 7446 | /* 14044*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7447 | /* 14047*/ OPC_RecordChild0, // #3 = $exp |
| 7448 | /* 14048*/ OPC_MoveParent, |
| 7449 | /* 14049*/ OPC_MoveChild3, |
| 7450 | /* 14050*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7451 | /* 14053*/ OPC_RecordChild0, // #4 = $new |
| 7452 | /* 14054*/ OPC_MoveParent, |
| 7453 | /* 14055*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 7454 | /* 14057*/ OPC_MoveParent, |
| 7455 | /* 14058*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7456 | /* 14060*/ OPC_EmitMergeInputChains1_0, |
| 7457 | /* 14061*/ OPC_EmitInteger, MVT::i32, 0, |
| 7458 | /* 14064*/ OPC_EmitConvertToTarget, 2, |
| 7459 | /* 14066*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7460 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 7461 | // Src: (zext:{ *:[i64] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_32>>) - Complexity = 20 |
| 7462 | // Dst: (ATOMIC_RMW32_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7463 | /* 14077*/ 0, // EndSwitchType |
| 7464 | /* 14078*/ /*SwitchOpcode*/ 80, TARGET_VAL(WebAssemblyISD::Wrapper),// ->14161 |
| 7465 | /* 14081*/ OPC_RecordChild0, // #1 = $off |
| 7466 | /* 14082*/ OPC_MoveChild0, |
| 7467 | /* 14083*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 7468 | /* 14086*/ OPC_MoveParent, |
| 7469 | /* 14087*/ OPC_MoveParent, |
| 7470 | /* 14088*/ OPC_MoveChild2, |
| 7471 | /* 14089*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7472 | /* 14092*/ OPC_RecordChild0, // #2 = $exp |
| 7473 | /* 14093*/ OPC_MoveParent, |
| 7474 | /* 14094*/ OPC_MoveChild3, |
| 7475 | /* 14095*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7476 | /* 14098*/ OPC_RecordChild0, // #3 = $new |
| 7477 | /* 14099*/ OPC_MoveParent, |
| 7478 | /* 14100*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 7479 | /* 14102*/ OPC_MoveParent, |
| 7480 | /* 14103*/ OPC_Scope, 27, /*->14132*/ // 2 children in Scope |
| 7481 | /* 14105*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 7482 | /* 14107*/ OPC_EmitMergeInputChains1_0, |
| 7483 | /* 14108*/ OPC_EmitInteger, MVT::i32, 0, |
| 7484 | /* 14111*/ OPC_EmitInteger, MVT::i32, 0, |
| 7485 | /* 14114*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 7486 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 7487 | /* 14121*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7488 | MVT::i64, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 7489 | // Src: (zext:{ *:[i64] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_32>>) - Complexity = 19 |
| 7490 | // Dst: (ATOMIC_RMW32_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7491 | /* 14132*/ /*Scope*/ 27, /*->14160*/ |
| 7492 | /* 14133*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 7493 | /* 14135*/ OPC_EmitMergeInputChains1_0, |
| 7494 | /* 14136*/ OPC_EmitInteger, MVT::i32, 0, |
| 7495 | /* 14139*/ OPC_EmitInteger, MVT::i64, 0, |
| 7496 | /* 14142*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 7497 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 7498 | /* 14149*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7499 | MVT::i64, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 7500 | // Src: (zext:{ *:[i64] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_32>>) - Complexity = 19 |
| 7501 | // Dst: (ATOMIC_RMW32_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7502 | /* 14160*/ 0, /*End of Scope*/ |
| 7503 | /* 14161*/ 0, // EndSwitchOpcode |
| 7504 | /* 14162*/ /*Scope*/ 24|128,1/*152*/, /*->14316*/ |
| 7505 | /* 14164*/ OPC_RecordChild1, // #1 = $off |
| 7506 | /* 14165*/ OPC_Scope, 72, /*->14239*/ // 3 children in Scope |
| 7507 | /* 14167*/ OPC_MoveChild1, |
| 7508 | /* 14168*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7509 | /* 14171*/ OPC_MoveParent, |
| 7510 | /* 14172*/ OPC_MoveChild2, |
| 7511 | /* 14173*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7512 | /* 14176*/ OPC_RecordChild0, // #2 = $exp |
| 7513 | /* 14177*/ OPC_MoveParent, |
| 7514 | /* 14178*/ OPC_MoveChild3, |
| 7515 | /* 14179*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7516 | /* 14182*/ OPC_RecordChild0, // #3 = $new |
| 7517 | /* 14183*/ OPC_MoveParent, |
| 7518 | /* 14184*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 7519 | /* 14186*/ OPC_MoveParent, |
| 7520 | /* 14187*/ OPC_EmitMergeInputChains1_0, |
| 7521 | /* 14188*/ OPC_EmitInteger, MVT::i32, 0, |
| 7522 | /* 14191*/ OPC_EmitConvertToTarget, 1, |
| 7523 | /* 14193*/ OPC_Scope, 21, /*->14216*/ // 2 children in Scope |
| 7524 | /* 14195*/ OPC_EmitInteger, MVT::i32, 0, |
| 7525 | /* 14198*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 7526 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 7527 | /* 14205*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7528 | MVT::i64, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 7529 | // Src: (zext:{ *:[i64] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_32>>) - Complexity = 16 |
| 7530 | // Dst: (ATOMIC_RMW32_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7531 | /* 14216*/ /*Scope*/ 21, /*->14238*/ |
| 7532 | /* 14217*/ OPC_EmitInteger, MVT::i64, 0, |
| 7533 | /* 14220*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 7534 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 7535 | /* 14227*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7536 | MVT::i64, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 7537 | // Src: (zext:{ *:[i64] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_32>>) - Complexity = 16 |
| 7538 | // Dst: (ATOMIC_RMW32_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7539 | /* 14238*/ 0, /*End of Scope*/ |
| 7540 | /* 14239*/ /*Scope*/ 37, /*->14277*/ |
| 7541 | /* 14240*/ OPC_CheckChild1Type, MVT::i32, |
| 7542 | /* 14242*/ OPC_MoveChild2, |
| 7543 | /* 14243*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7544 | /* 14246*/ OPC_RecordChild0, // #2 = $exp |
| 7545 | /* 14247*/ OPC_MoveParent, |
| 7546 | /* 14248*/ OPC_MoveChild3, |
| 7547 | /* 14249*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7548 | /* 14252*/ OPC_RecordChild0, // #3 = $new |
| 7549 | /* 14253*/ OPC_MoveParent, |
| 7550 | /* 14254*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 7551 | /* 14256*/ OPC_MoveParent, |
| 7552 | /* 14257*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7553 | /* 14259*/ OPC_EmitMergeInputChains1_0, |
| 7554 | /* 14260*/ OPC_EmitInteger, MVT::i32, 0, |
| 7555 | /* 14263*/ OPC_EmitInteger, MVT::i32, 0, |
| 7556 | /* 14266*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7557 | MVT::i64, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 7558 | // Src: (zext:{ *:[i64] } (atomic_cmp_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_32>>) - Complexity = 13 |
| 7559 | // Dst: (ATOMIC_RMW32_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7560 | /* 14277*/ /*Scope*/ 37, /*->14315*/ |
| 7561 | /* 14278*/ OPC_CheckChild1Type, MVT::i64, |
| 7562 | /* 14280*/ OPC_MoveChild2, |
| 7563 | /* 14281*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7564 | /* 14284*/ OPC_RecordChild0, // #2 = $exp |
| 7565 | /* 14285*/ OPC_MoveParent, |
| 7566 | /* 14286*/ OPC_MoveChild3, |
| 7567 | /* 14287*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7568 | /* 14290*/ OPC_RecordChild0, // #3 = $new |
| 7569 | /* 14291*/ OPC_MoveParent, |
| 7570 | /* 14292*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 7571 | /* 14294*/ OPC_MoveParent, |
| 7572 | /* 14295*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7573 | /* 14297*/ OPC_EmitMergeInputChains1_0, |
| 7574 | /* 14298*/ OPC_EmitInteger, MVT::i32, 0, |
| 7575 | /* 14301*/ OPC_EmitInteger, MVT::i64, 0, |
| 7576 | /* 14304*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7577 | MVT::i64, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 7578 | // Src: (zext:{ *:[i64] } (atomic_cmp_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_32>>) - Complexity = 13 |
| 7579 | // Dst: (ATOMIC_RMW32_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 7580 | /* 14315*/ 0, /*End of Scope*/ |
| 7581 | /* 14316*/ 0, /*End of Scope*/ |
| 7582 | /* 14317*/ /*SwitchOpcode*/ 118|128,2/*374*/, TARGET_VAL(ISD::ATOMIC_LOAD_ADD),// ->14695 |
| 7583 | /* 14321*/ OPC_RecordMemRef, |
| 7584 | /* 14322*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 7585 | /* 14323*/ OPC_Scope, 98|128,1/*226*/, /*->14552*/ // 2 children in Scope |
| 7586 | /* 14326*/ OPC_MoveChild1, |
| 7587 | /* 14327*/ OPC_SwitchOpcode /*3 cases */, 71, TARGET_VAL(ISD::ADD),// ->14402 |
| 7588 | /* 14331*/ OPC_RecordChild0, // #1 = $addr |
| 7589 | /* 14332*/ OPC_RecordChild1, // #2 = $off |
| 7590 | /* 14333*/ OPC_MoveChild1, |
| 7591 | /* 14334*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7592 | /* 14337*/ OPC_MoveParent, |
| 7593 | /* 14338*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 7594 | /* 14340*/ OPC_SwitchType /*2 cases */, 28, MVT::i32,// ->14371 |
| 7595 | /* 14343*/ OPC_MoveParent, |
| 7596 | /* 14344*/ OPC_MoveChild2, |
| 7597 | /* 14345*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7598 | /* 14348*/ OPC_RecordChild0, // #3 = $val |
| 7599 | /* 14349*/ OPC_MoveParent, |
| 7600 | /* 14350*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 7601 | /* 14352*/ OPC_MoveParent, |
| 7602 | /* 14353*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7603 | /* 14355*/ OPC_EmitMergeInputChains1_0, |
| 7604 | /* 14356*/ OPC_EmitInteger, MVT::i32, 0, |
| 7605 | /* 14359*/ OPC_EmitConvertToTarget, 2, |
| 7606 | /* 14361*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7607 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 7608 | // Src: (zext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_32>>) - Complexity = 17 |
| 7609 | // Dst: (ATOMIC_RMW32_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 7610 | /* 14371*/ /*SwitchType*/ 28, MVT::i64,// ->14401 |
| 7611 | /* 14373*/ OPC_MoveParent, |
| 7612 | /* 14374*/ OPC_MoveChild2, |
| 7613 | /* 14375*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7614 | /* 14378*/ OPC_RecordChild0, // #3 = $val |
| 7615 | /* 14379*/ OPC_MoveParent, |
| 7616 | /* 14380*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 7617 | /* 14382*/ OPC_MoveParent, |
| 7618 | /* 14383*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7619 | /* 14385*/ OPC_EmitMergeInputChains1_0, |
| 7620 | /* 14386*/ OPC_EmitInteger, MVT::i32, 0, |
| 7621 | /* 14389*/ OPC_EmitConvertToTarget, 2, |
| 7622 | /* 14391*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7623 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 7624 | // Src: (zext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_32>>) - Complexity = 17 |
| 7625 | // Dst: (ATOMIC_RMW32_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 7626 | /* 14401*/ 0, // EndSwitchType |
| 7627 | /* 14402*/ /*SwitchOpcode*/ 71, TARGET_VAL(ISD::OR),// ->14476 |
| 7628 | /* 14405*/ OPC_RecordChild0, // #1 = $addr |
| 7629 | /* 14406*/ OPC_RecordChild1, // #2 = $off |
| 7630 | /* 14407*/ OPC_MoveChild1, |
| 7631 | /* 14408*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7632 | /* 14411*/ OPC_MoveParent, |
| 7633 | /* 14412*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 7634 | /* 14414*/ OPC_SwitchType /*2 cases */, 28, MVT::i32,// ->14445 |
| 7635 | /* 14417*/ OPC_MoveParent, |
| 7636 | /* 14418*/ OPC_MoveChild2, |
| 7637 | /* 14419*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7638 | /* 14422*/ OPC_RecordChild0, // #3 = $val |
| 7639 | /* 14423*/ OPC_MoveParent, |
| 7640 | /* 14424*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 7641 | /* 14426*/ OPC_MoveParent, |
| 7642 | /* 14427*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7643 | /* 14429*/ OPC_EmitMergeInputChains1_0, |
| 7644 | /* 14430*/ OPC_EmitInteger, MVT::i32, 0, |
| 7645 | /* 14433*/ OPC_EmitConvertToTarget, 2, |
| 7646 | /* 14435*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7647 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 7648 | // Src: (zext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_32>>) - Complexity = 17 |
| 7649 | // Dst: (ATOMIC_RMW32_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 7650 | /* 14445*/ /*SwitchType*/ 28, MVT::i64,// ->14475 |
| 7651 | /* 14447*/ OPC_MoveParent, |
| 7652 | /* 14448*/ OPC_MoveChild2, |
| 7653 | /* 14449*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7654 | /* 14452*/ OPC_RecordChild0, // #3 = $val |
| 7655 | /* 14453*/ OPC_MoveParent, |
| 7656 | /* 14454*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 7657 | /* 14456*/ OPC_MoveParent, |
| 7658 | /* 14457*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7659 | /* 14459*/ OPC_EmitMergeInputChains1_0, |
| 7660 | /* 14460*/ OPC_EmitInteger, MVT::i32, 0, |
| 7661 | /* 14463*/ OPC_EmitConvertToTarget, 2, |
| 7662 | /* 14465*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7663 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 7664 | // Src: (zext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_32>>) - Complexity = 17 |
| 7665 | // Dst: (ATOMIC_RMW32_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 7666 | /* 14475*/ 0, // EndSwitchType |
| 7667 | /* 14476*/ /*SwitchOpcode*/ 72, TARGET_VAL(WebAssemblyISD::Wrapper),// ->14551 |
| 7668 | /* 14479*/ OPC_RecordChild0, // #1 = $off |
| 7669 | /* 14480*/ OPC_MoveChild0, |
| 7670 | /* 14481*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 7671 | /* 14484*/ OPC_MoveParent, |
| 7672 | /* 14485*/ OPC_MoveParent, |
| 7673 | /* 14486*/ OPC_MoveChild2, |
| 7674 | /* 14487*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7675 | /* 14490*/ OPC_RecordChild0, // #2 = $val |
| 7676 | /* 14491*/ OPC_MoveParent, |
| 7677 | /* 14492*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 7678 | /* 14494*/ OPC_MoveParent, |
| 7679 | /* 14495*/ OPC_Scope, 26, /*->14523*/ // 2 children in Scope |
| 7680 | /* 14497*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 7681 | /* 14499*/ OPC_EmitMergeInputChains1_0, |
| 7682 | /* 14500*/ OPC_EmitInteger, MVT::i32, 0, |
| 7683 | /* 14503*/ OPC_EmitInteger, MVT::i32, 0, |
| 7684 | /* 14506*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 7685 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 7686 | /* 14513*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7687 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 7688 | // Src: (zext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_32>>) - Complexity = 16 |
| 7689 | // Dst: (ATOMIC_RMW32_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 7690 | /* 14523*/ /*Scope*/ 26, /*->14550*/ |
| 7691 | /* 14524*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 7692 | /* 14526*/ OPC_EmitMergeInputChains1_0, |
| 7693 | /* 14527*/ OPC_EmitInteger, MVT::i32, 0, |
| 7694 | /* 14530*/ OPC_EmitInteger, MVT::i64, 0, |
| 7695 | /* 14533*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 7696 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 7697 | /* 14540*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7698 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 7699 | // Src: (zext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_32>>) - Complexity = 16 |
| 7700 | // Dst: (ATOMIC_RMW32_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 7701 | /* 14550*/ 0, /*End of Scope*/ |
| 7702 | /* 14551*/ 0, // EndSwitchOpcode |
| 7703 | /* 14552*/ /*Scope*/ 12|128,1/*140*/, /*->14694*/ |
| 7704 | /* 14554*/ OPC_RecordChild1, // #1 = $off |
| 7705 | /* 14555*/ OPC_Scope, 74, /*->14631*/ // 3 children in Scope |
| 7706 | /* 14557*/ OPC_MoveChild1, |
| 7707 | /* 14558*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7708 | /* 14561*/ OPC_MoveParent, |
| 7709 | /* 14562*/ OPC_MoveChild2, |
| 7710 | /* 14563*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7711 | /* 14566*/ OPC_RecordChild0, // #2 = $val |
| 7712 | /* 14567*/ OPC_MoveParent, |
| 7713 | /* 14568*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 7714 | /* 14570*/ OPC_MoveParent, |
| 7715 | /* 14571*/ OPC_Scope, 28, /*->14601*/ // 2 children in Scope |
| 7716 | /* 14573*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7717 | /* 14575*/ OPC_EmitMergeInputChains1_0, |
| 7718 | /* 14576*/ OPC_EmitInteger, MVT::i32, 0, |
| 7719 | /* 14579*/ OPC_EmitConvertToTarget, 1, |
| 7720 | /* 14581*/ OPC_EmitInteger, MVT::i32, 0, |
| 7721 | /* 14584*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 7722 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 7723 | /* 14591*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7724 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 7725 | // Src: (zext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_32>>) - Complexity = 13 |
| 7726 | // Dst: (ATOMIC_RMW32_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 7727 | /* 14601*/ /*Scope*/ 28, /*->14630*/ |
| 7728 | /* 14602*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7729 | /* 14604*/ OPC_EmitMergeInputChains1_0, |
| 7730 | /* 14605*/ OPC_EmitInteger, MVT::i32, 0, |
| 7731 | /* 14608*/ OPC_EmitConvertToTarget, 1, |
| 7732 | /* 14610*/ OPC_EmitInteger, MVT::i64, 0, |
| 7733 | /* 14613*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 7734 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 7735 | /* 14620*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7736 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 7737 | // Src: (zext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_32>>) - Complexity = 13 |
| 7738 | // Dst: (ATOMIC_RMW32_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 7739 | /* 14630*/ 0, /*End of Scope*/ |
| 7740 | /* 14631*/ /*Scope*/ 30, /*->14662*/ |
| 7741 | /* 14632*/ OPC_CheckChild1Type, MVT::i32, |
| 7742 | /* 14634*/ OPC_MoveChild2, |
| 7743 | /* 14635*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7744 | /* 14638*/ OPC_RecordChild0, // #2 = $val |
| 7745 | /* 14639*/ OPC_MoveParent, |
| 7746 | /* 14640*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 7747 | /* 14642*/ OPC_MoveParent, |
| 7748 | /* 14643*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7749 | /* 14645*/ OPC_EmitMergeInputChains1_0, |
| 7750 | /* 14646*/ OPC_EmitInteger, MVT::i32, 0, |
| 7751 | /* 14649*/ OPC_EmitInteger, MVT::i32, 0, |
| 7752 | /* 14652*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7753 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 7754 | // Src: (zext:{ *:[i64] } (atomic_load_add:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_32>>) - Complexity = 10 |
| 7755 | // Dst: (ATOMIC_RMW32_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 7756 | /* 14662*/ /*Scope*/ 30, /*->14693*/ |
| 7757 | /* 14663*/ OPC_CheckChild1Type, MVT::i64, |
| 7758 | /* 14665*/ OPC_MoveChild2, |
| 7759 | /* 14666*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7760 | /* 14669*/ OPC_RecordChild0, // #2 = $val |
| 7761 | /* 14670*/ OPC_MoveParent, |
| 7762 | /* 14671*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 7763 | /* 14673*/ OPC_MoveParent, |
| 7764 | /* 14674*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7765 | /* 14676*/ OPC_EmitMergeInputChains1_0, |
| 7766 | /* 14677*/ OPC_EmitInteger, MVT::i32, 0, |
| 7767 | /* 14680*/ OPC_EmitInteger, MVT::i64, 0, |
| 7768 | /* 14683*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7769 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 7770 | // Src: (zext:{ *:[i64] } (atomic_load_add:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_32>>) - Complexity = 10 |
| 7771 | // Dst: (ATOMIC_RMW32_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 7772 | /* 14693*/ 0, /*End of Scope*/ |
| 7773 | /* 14694*/ 0, /*End of Scope*/ |
| 7774 | /* 14695*/ /*SwitchOpcode*/ 118|128,2/*374*/, TARGET_VAL(ISD::ATOMIC_LOAD_SUB),// ->15073 |
| 7775 | /* 14699*/ OPC_RecordMemRef, |
| 7776 | /* 14700*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 7777 | /* 14701*/ OPC_Scope, 98|128,1/*226*/, /*->14930*/ // 2 children in Scope |
| 7778 | /* 14704*/ OPC_MoveChild1, |
| 7779 | /* 14705*/ OPC_SwitchOpcode /*3 cases */, 71, TARGET_VAL(ISD::ADD),// ->14780 |
| 7780 | /* 14709*/ OPC_RecordChild0, // #1 = $addr |
| 7781 | /* 14710*/ OPC_RecordChild1, // #2 = $off |
| 7782 | /* 14711*/ OPC_MoveChild1, |
| 7783 | /* 14712*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7784 | /* 14715*/ OPC_MoveParent, |
| 7785 | /* 14716*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 7786 | /* 14718*/ OPC_SwitchType /*2 cases */, 28, MVT::i32,// ->14749 |
| 7787 | /* 14721*/ OPC_MoveParent, |
| 7788 | /* 14722*/ OPC_MoveChild2, |
| 7789 | /* 14723*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7790 | /* 14726*/ OPC_RecordChild0, // #3 = $val |
| 7791 | /* 14727*/ OPC_MoveParent, |
| 7792 | /* 14728*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 7793 | /* 14730*/ OPC_MoveParent, |
| 7794 | /* 14731*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7795 | /* 14733*/ OPC_EmitMergeInputChains1_0, |
| 7796 | /* 14734*/ OPC_EmitInteger, MVT::i32, 0, |
| 7797 | /* 14737*/ OPC_EmitConvertToTarget, 2, |
| 7798 | /* 14739*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7799 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 7800 | // Src: (zext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_32>>) - Complexity = 17 |
| 7801 | // Dst: (ATOMIC_RMW32_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 7802 | /* 14749*/ /*SwitchType*/ 28, MVT::i64,// ->14779 |
| 7803 | /* 14751*/ OPC_MoveParent, |
| 7804 | /* 14752*/ OPC_MoveChild2, |
| 7805 | /* 14753*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7806 | /* 14756*/ OPC_RecordChild0, // #3 = $val |
| 7807 | /* 14757*/ OPC_MoveParent, |
| 7808 | /* 14758*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 7809 | /* 14760*/ OPC_MoveParent, |
| 7810 | /* 14761*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7811 | /* 14763*/ OPC_EmitMergeInputChains1_0, |
| 7812 | /* 14764*/ OPC_EmitInteger, MVT::i32, 0, |
| 7813 | /* 14767*/ OPC_EmitConvertToTarget, 2, |
| 7814 | /* 14769*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7815 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 7816 | // Src: (zext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_32>>) - Complexity = 17 |
| 7817 | // Dst: (ATOMIC_RMW32_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 7818 | /* 14779*/ 0, // EndSwitchType |
| 7819 | /* 14780*/ /*SwitchOpcode*/ 71, TARGET_VAL(ISD::OR),// ->14854 |
| 7820 | /* 14783*/ OPC_RecordChild0, // #1 = $addr |
| 7821 | /* 14784*/ OPC_RecordChild1, // #2 = $off |
| 7822 | /* 14785*/ OPC_MoveChild1, |
| 7823 | /* 14786*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7824 | /* 14789*/ OPC_MoveParent, |
| 7825 | /* 14790*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 7826 | /* 14792*/ OPC_SwitchType /*2 cases */, 28, MVT::i32,// ->14823 |
| 7827 | /* 14795*/ OPC_MoveParent, |
| 7828 | /* 14796*/ OPC_MoveChild2, |
| 7829 | /* 14797*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7830 | /* 14800*/ OPC_RecordChild0, // #3 = $val |
| 7831 | /* 14801*/ OPC_MoveParent, |
| 7832 | /* 14802*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 7833 | /* 14804*/ OPC_MoveParent, |
| 7834 | /* 14805*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7835 | /* 14807*/ OPC_EmitMergeInputChains1_0, |
| 7836 | /* 14808*/ OPC_EmitInteger, MVT::i32, 0, |
| 7837 | /* 14811*/ OPC_EmitConvertToTarget, 2, |
| 7838 | /* 14813*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7839 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 7840 | // Src: (zext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_32>>) - Complexity = 17 |
| 7841 | // Dst: (ATOMIC_RMW32_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 7842 | /* 14823*/ /*SwitchType*/ 28, MVT::i64,// ->14853 |
| 7843 | /* 14825*/ OPC_MoveParent, |
| 7844 | /* 14826*/ OPC_MoveChild2, |
| 7845 | /* 14827*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7846 | /* 14830*/ OPC_RecordChild0, // #3 = $val |
| 7847 | /* 14831*/ OPC_MoveParent, |
| 7848 | /* 14832*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 7849 | /* 14834*/ OPC_MoveParent, |
| 7850 | /* 14835*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7851 | /* 14837*/ OPC_EmitMergeInputChains1_0, |
| 7852 | /* 14838*/ OPC_EmitInteger, MVT::i32, 0, |
| 7853 | /* 14841*/ OPC_EmitConvertToTarget, 2, |
| 7854 | /* 14843*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7855 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 7856 | // Src: (zext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_32>>) - Complexity = 17 |
| 7857 | // Dst: (ATOMIC_RMW32_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 7858 | /* 14853*/ 0, // EndSwitchType |
| 7859 | /* 14854*/ /*SwitchOpcode*/ 72, TARGET_VAL(WebAssemblyISD::Wrapper),// ->14929 |
| 7860 | /* 14857*/ OPC_RecordChild0, // #1 = $off |
| 7861 | /* 14858*/ OPC_MoveChild0, |
| 7862 | /* 14859*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 7863 | /* 14862*/ OPC_MoveParent, |
| 7864 | /* 14863*/ OPC_MoveParent, |
| 7865 | /* 14864*/ OPC_MoveChild2, |
| 7866 | /* 14865*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7867 | /* 14868*/ OPC_RecordChild0, // #2 = $val |
| 7868 | /* 14869*/ OPC_MoveParent, |
| 7869 | /* 14870*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 7870 | /* 14872*/ OPC_MoveParent, |
| 7871 | /* 14873*/ OPC_Scope, 26, /*->14901*/ // 2 children in Scope |
| 7872 | /* 14875*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 7873 | /* 14877*/ OPC_EmitMergeInputChains1_0, |
| 7874 | /* 14878*/ OPC_EmitInteger, MVT::i32, 0, |
| 7875 | /* 14881*/ OPC_EmitInteger, MVT::i32, 0, |
| 7876 | /* 14884*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 7877 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 7878 | /* 14891*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7879 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 7880 | // Src: (zext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_32>>) - Complexity = 16 |
| 7881 | // Dst: (ATOMIC_RMW32_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 7882 | /* 14901*/ /*Scope*/ 26, /*->14928*/ |
| 7883 | /* 14902*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 7884 | /* 14904*/ OPC_EmitMergeInputChains1_0, |
| 7885 | /* 14905*/ OPC_EmitInteger, MVT::i32, 0, |
| 7886 | /* 14908*/ OPC_EmitInteger, MVT::i64, 0, |
| 7887 | /* 14911*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 7888 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 7889 | /* 14918*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7890 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 7891 | // Src: (zext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_32>>) - Complexity = 16 |
| 7892 | // Dst: (ATOMIC_RMW32_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 7893 | /* 14928*/ 0, /*End of Scope*/ |
| 7894 | /* 14929*/ 0, // EndSwitchOpcode |
| 7895 | /* 14930*/ /*Scope*/ 12|128,1/*140*/, /*->15072*/ |
| 7896 | /* 14932*/ OPC_RecordChild1, // #1 = $off |
| 7897 | /* 14933*/ OPC_Scope, 74, /*->15009*/ // 3 children in Scope |
| 7898 | /* 14935*/ OPC_MoveChild1, |
| 7899 | /* 14936*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7900 | /* 14939*/ OPC_MoveParent, |
| 7901 | /* 14940*/ OPC_MoveChild2, |
| 7902 | /* 14941*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7903 | /* 14944*/ OPC_RecordChild0, // #2 = $val |
| 7904 | /* 14945*/ OPC_MoveParent, |
| 7905 | /* 14946*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 7906 | /* 14948*/ OPC_MoveParent, |
| 7907 | /* 14949*/ OPC_Scope, 28, /*->14979*/ // 2 children in Scope |
| 7908 | /* 14951*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7909 | /* 14953*/ OPC_EmitMergeInputChains1_0, |
| 7910 | /* 14954*/ OPC_EmitInteger, MVT::i32, 0, |
| 7911 | /* 14957*/ OPC_EmitConvertToTarget, 1, |
| 7912 | /* 14959*/ OPC_EmitInteger, MVT::i32, 0, |
| 7913 | /* 14962*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 7914 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 7915 | /* 14969*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7916 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 7917 | // Src: (zext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_32>>) - Complexity = 13 |
| 7918 | // Dst: (ATOMIC_RMW32_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 7919 | /* 14979*/ /*Scope*/ 28, /*->15008*/ |
| 7920 | /* 14980*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7921 | /* 14982*/ OPC_EmitMergeInputChains1_0, |
| 7922 | /* 14983*/ OPC_EmitInteger, MVT::i32, 0, |
| 7923 | /* 14986*/ OPC_EmitConvertToTarget, 1, |
| 7924 | /* 14988*/ OPC_EmitInteger, MVT::i64, 0, |
| 7925 | /* 14991*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 7926 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 7927 | /* 14998*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7928 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 7929 | // Src: (zext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_32>>) - Complexity = 13 |
| 7930 | // Dst: (ATOMIC_RMW32_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 7931 | /* 15008*/ 0, /*End of Scope*/ |
| 7932 | /* 15009*/ /*Scope*/ 30, /*->15040*/ |
| 7933 | /* 15010*/ OPC_CheckChild1Type, MVT::i32, |
| 7934 | /* 15012*/ OPC_MoveChild2, |
| 7935 | /* 15013*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7936 | /* 15016*/ OPC_RecordChild0, // #2 = $val |
| 7937 | /* 15017*/ OPC_MoveParent, |
| 7938 | /* 15018*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 7939 | /* 15020*/ OPC_MoveParent, |
| 7940 | /* 15021*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7941 | /* 15023*/ OPC_EmitMergeInputChains1_0, |
| 7942 | /* 15024*/ OPC_EmitInteger, MVT::i32, 0, |
| 7943 | /* 15027*/ OPC_EmitInteger, MVT::i32, 0, |
| 7944 | /* 15030*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7945 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 7946 | // Src: (zext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_32>>) - Complexity = 10 |
| 7947 | // Dst: (ATOMIC_RMW32_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 7948 | /* 15040*/ /*Scope*/ 30, /*->15071*/ |
| 7949 | /* 15041*/ OPC_CheckChild1Type, MVT::i64, |
| 7950 | /* 15043*/ OPC_MoveChild2, |
| 7951 | /* 15044*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7952 | /* 15047*/ OPC_RecordChild0, // #2 = $val |
| 7953 | /* 15048*/ OPC_MoveParent, |
| 7954 | /* 15049*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 7955 | /* 15051*/ OPC_MoveParent, |
| 7956 | /* 15052*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7957 | /* 15054*/ OPC_EmitMergeInputChains1_0, |
| 7958 | /* 15055*/ OPC_EmitInteger, MVT::i32, 0, |
| 7959 | /* 15058*/ OPC_EmitInteger, MVT::i64, 0, |
| 7960 | /* 15061*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 7961 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 7962 | // Src: (zext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_32>>) - Complexity = 10 |
| 7963 | // Dst: (ATOMIC_RMW32_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 7964 | /* 15071*/ 0, /*End of Scope*/ |
| 7965 | /* 15072*/ 0, /*End of Scope*/ |
| 7966 | /* 15073*/ /*SwitchOpcode*/ 118|128,2/*374*/, TARGET_VAL(ISD::ATOMIC_LOAD_AND),// ->15451 |
| 7967 | /* 15077*/ OPC_RecordMemRef, |
| 7968 | /* 15078*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 7969 | /* 15079*/ OPC_Scope, 98|128,1/*226*/, /*->15308*/ // 2 children in Scope |
| 7970 | /* 15082*/ OPC_MoveChild1, |
| 7971 | /* 15083*/ OPC_SwitchOpcode /*3 cases */, 71, TARGET_VAL(ISD::ADD),// ->15158 |
| 7972 | /* 15087*/ OPC_RecordChild0, // #1 = $addr |
| 7973 | /* 15088*/ OPC_RecordChild1, // #2 = $off |
| 7974 | /* 15089*/ OPC_MoveChild1, |
| 7975 | /* 15090*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 7976 | /* 15093*/ OPC_MoveParent, |
| 7977 | /* 15094*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 7978 | /* 15096*/ OPC_SwitchType /*2 cases */, 28, MVT::i32,// ->15127 |
| 7979 | /* 15099*/ OPC_MoveParent, |
| 7980 | /* 15100*/ OPC_MoveChild2, |
| 7981 | /* 15101*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7982 | /* 15104*/ OPC_RecordChild0, // #3 = $val |
| 7983 | /* 15105*/ OPC_MoveParent, |
| 7984 | /* 15106*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 7985 | /* 15108*/ OPC_MoveParent, |
| 7986 | /* 15109*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 7987 | /* 15111*/ OPC_EmitMergeInputChains1_0, |
| 7988 | /* 15112*/ OPC_EmitInteger, MVT::i32, 0, |
| 7989 | /* 15115*/ OPC_EmitConvertToTarget, 2, |
| 7990 | /* 15117*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 7991 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 7992 | // Src: (zext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_32>>) - Complexity = 17 |
| 7993 | // Dst: (ATOMIC_RMW32_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 7994 | /* 15127*/ /*SwitchType*/ 28, MVT::i64,// ->15157 |
| 7995 | /* 15129*/ OPC_MoveParent, |
| 7996 | /* 15130*/ OPC_MoveChild2, |
| 7997 | /* 15131*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 7998 | /* 15134*/ OPC_RecordChild0, // #3 = $val |
| 7999 | /* 15135*/ OPC_MoveParent, |
| 8000 | /* 15136*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 8001 | /* 15138*/ OPC_MoveParent, |
| 8002 | /* 15139*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8003 | /* 15141*/ OPC_EmitMergeInputChains1_0, |
| 8004 | /* 15142*/ OPC_EmitInteger, MVT::i32, 0, |
| 8005 | /* 15145*/ OPC_EmitConvertToTarget, 2, |
| 8006 | /* 15147*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8007 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8008 | // Src: (zext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_32>>) - Complexity = 17 |
| 8009 | // Dst: (ATOMIC_RMW32_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 8010 | /* 15157*/ 0, // EndSwitchType |
| 8011 | /* 15158*/ /*SwitchOpcode*/ 71, TARGET_VAL(ISD::OR),// ->15232 |
| 8012 | /* 15161*/ OPC_RecordChild0, // #1 = $addr |
| 8013 | /* 15162*/ OPC_RecordChild1, // #2 = $off |
| 8014 | /* 15163*/ OPC_MoveChild1, |
| 8015 | /* 15164*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8016 | /* 15167*/ OPC_MoveParent, |
| 8017 | /* 15168*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 8018 | /* 15170*/ OPC_SwitchType /*2 cases */, 28, MVT::i32,// ->15201 |
| 8019 | /* 15173*/ OPC_MoveParent, |
| 8020 | /* 15174*/ OPC_MoveChild2, |
| 8021 | /* 15175*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8022 | /* 15178*/ OPC_RecordChild0, // #3 = $val |
| 8023 | /* 15179*/ OPC_MoveParent, |
| 8024 | /* 15180*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 8025 | /* 15182*/ OPC_MoveParent, |
| 8026 | /* 15183*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8027 | /* 15185*/ OPC_EmitMergeInputChains1_0, |
| 8028 | /* 15186*/ OPC_EmitInteger, MVT::i32, 0, |
| 8029 | /* 15189*/ OPC_EmitConvertToTarget, 2, |
| 8030 | /* 15191*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8031 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8032 | // Src: (zext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_32>>) - Complexity = 17 |
| 8033 | // Dst: (ATOMIC_RMW32_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 8034 | /* 15201*/ /*SwitchType*/ 28, MVT::i64,// ->15231 |
| 8035 | /* 15203*/ OPC_MoveParent, |
| 8036 | /* 15204*/ OPC_MoveChild2, |
| 8037 | /* 15205*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8038 | /* 15208*/ OPC_RecordChild0, // #3 = $val |
| 8039 | /* 15209*/ OPC_MoveParent, |
| 8040 | /* 15210*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 8041 | /* 15212*/ OPC_MoveParent, |
| 8042 | /* 15213*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8043 | /* 15215*/ OPC_EmitMergeInputChains1_0, |
| 8044 | /* 15216*/ OPC_EmitInteger, MVT::i32, 0, |
| 8045 | /* 15219*/ OPC_EmitConvertToTarget, 2, |
| 8046 | /* 15221*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8047 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8048 | // Src: (zext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_32>>) - Complexity = 17 |
| 8049 | // Dst: (ATOMIC_RMW32_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 8050 | /* 15231*/ 0, // EndSwitchType |
| 8051 | /* 15232*/ /*SwitchOpcode*/ 72, TARGET_VAL(WebAssemblyISD::Wrapper),// ->15307 |
| 8052 | /* 15235*/ OPC_RecordChild0, // #1 = $off |
| 8053 | /* 15236*/ OPC_MoveChild0, |
| 8054 | /* 15237*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 8055 | /* 15240*/ OPC_MoveParent, |
| 8056 | /* 15241*/ OPC_MoveParent, |
| 8057 | /* 15242*/ OPC_MoveChild2, |
| 8058 | /* 15243*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8059 | /* 15246*/ OPC_RecordChild0, // #2 = $val |
| 8060 | /* 15247*/ OPC_MoveParent, |
| 8061 | /* 15248*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 8062 | /* 15250*/ OPC_MoveParent, |
| 8063 | /* 15251*/ OPC_Scope, 26, /*->15279*/ // 2 children in Scope |
| 8064 | /* 15253*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 8065 | /* 15255*/ OPC_EmitMergeInputChains1_0, |
| 8066 | /* 15256*/ OPC_EmitInteger, MVT::i32, 0, |
| 8067 | /* 15259*/ OPC_EmitInteger, MVT::i32, 0, |
| 8068 | /* 15262*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 8069 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 8070 | /* 15269*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8071 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 8072 | // Src: (zext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_32>>) - Complexity = 16 |
| 8073 | // Dst: (ATOMIC_RMW32_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 8074 | /* 15279*/ /*Scope*/ 26, /*->15306*/ |
| 8075 | /* 15280*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 8076 | /* 15282*/ OPC_EmitMergeInputChains1_0, |
| 8077 | /* 15283*/ OPC_EmitInteger, MVT::i32, 0, |
| 8078 | /* 15286*/ OPC_EmitInteger, MVT::i64, 0, |
| 8079 | /* 15289*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 8080 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 8081 | /* 15296*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8082 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 8083 | // Src: (zext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_32>>) - Complexity = 16 |
| 8084 | // Dst: (ATOMIC_RMW32_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 8085 | /* 15306*/ 0, /*End of Scope*/ |
| 8086 | /* 15307*/ 0, // EndSwitchOpcode |
| 8087 | /* 15308*/ /*Scope*/ 12|128,1/*140*/, /*->15450*/ |
| 8088 | /* 15310*/ OPC_RecordChild1, // #1 = $off |
| 8089 | /* 15311*/ OPC_Scope, 74, /*->15387*/ // 3 children in Scope |
| 8090 | /* 15313*/ OPC_MoveChild1, |
| 8091 | /* 15314*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8092 | /* 15317*/ OPC_MoveParent, |
| 8093 | /* 15318*/ OPC_MoveChild2, |
| 8094 | /* 15319*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8095 | /* 15322*/ OPC_RecordChild0, // #2 = $val |
| 8096 | /* 15323*/ OPC_MoveParent, |
| 8097 | /* 15324*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 8098 | /* 15326*/ OPC_MoveParent, |
| 8099 | /* 15327*/ OPC_Scope, 28, /*->15357*/ // 2 children in Scope |
| 8100 | /* 15329*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8101 | /* 15331*/ OPC_EmitMergeInputChains1_0, |
| 8102 | /* 15332*/ OPC_EmitInteger, MVT::i32, 0, |
| 8103 | /* 15335*/ OPC_EmitConvertToTarget, 1, |
| 8104 | /* 15337*/ OPC_EmitInteger, MVT::i32, 0, |
| 8105 | /* 15340*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 8106 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 8107 | /* 15347*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8108 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 8109 | // Src: (zext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_32>>) - Complexity = 13 |
| 8110 | // Dst: (ATOMIC_RMW32_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 8111 | /* 15357*/ /*Scope*/ 28, /*->15386*/ |
| 8112 | /* 15358*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8113 | /* 15360*/ OPC_EmitMergeInputChains1_0, |
| 8114 | /* 15361*/ OPC_EmitInteger, MVT::i32, 0, |
| 8115 | /* 15364*/ OPC_EmitConvertToTarget, 1, |
| 8116 | /* 15366*/ OPC_EmitInteger, MVT::i64, 0, |
| 8117 | /* 15369*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 8118 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 8119 | /* 15376*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8120 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 8121 | // Src: (zext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_32>>) - Complexity = 13 |
| 8122 | // Dst: (ATOMIC_RMW32_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 8123 | /* 15386*/ 0, /*End of Scope*/ |
| 8124 | /* 15387*/ /*Scope*/ 30, /*->15418*/ |
| 8125 | /* 15388*/ OPC_CheckChild1Type, MVT::i32, |
| 8126 | /* 15390*/ OPC_MoveChild2, |
| 8127 | /* 15391*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8128 | /* 15394*/ OPC_RecordChild0, // #2 = $val |
| 8129 | /* 15395*/ OPC_MoveParent, |
| 8130 | /* 15396*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 8131 | /* 15398*/ OPC_MoveParent, |
| 8132 | /* 15399*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8133 | /* 15401*/ OPC_EmitMergeInputChains1_0, |
| 8134 | /* 15402*/ OPC_EmitInteger, MVT::i32, 0, |
| 8135 | /* 15405*/ OPC_EmitInteger, MVT::i32, 0, |
| 8136 | /* 15408*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8137 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 8138 | // Src: (zext:{ *:[i64] } (atomic_load_and:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_32>>) - Complexity = 10 |
| 8139 | // Dst: (ATOMIC_RMW32_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 8140 | /* 15418*/ /*Scope*/ 30, /*->15449*/ |
| 8141 | /* 15419*/ OPC_CheckChild1Type, MVT::i64, |
| 8142 | /* 15421*/ OPC_MoveChild2, |
| 8143 | /* 15422*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8144 | /* 15425*/ OPC_RecordChild0, // #2 = $val |
| 8145 | /* 15426*/ OPC_MoveParent, |
| 8146 | /* 15427*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 8147 | /* 15429*/ OPC_MoveParent, |
| 8148 | /* 15430*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8149 | /* 15432*/ OPC_EmitMergeInputChains1_0, |
| 8150 | /* 15433*/ OPC_EmitInteger, MVT::i32, 0, |
| 8151 | /* 15436*/ OPC_EmitInteger, MVT::i64, 0, |
| 8152 | /* 15439*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8153 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 8154 | // Src: (zext:{ *:[i64] } (atomic_load_and:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_32>>) - Complexity = 10 |
| 8155 | // Dst: (ATOMIC_RMW32_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 8156 | /* 15449*/ 0, /*End of Scope*/ |
| 8157 | /* 15450*/ 0, /*End of Scope*/ |
| 8158 | /* 15451*/ /*SwitchOpcode*/ 118|128,2/*374*/, TARGET_VAL(ISD::ATOMIC_LOAD_OR),// ->15829 |
| 8159 | /* 15455*/ OPC_RecordMemRef, |
| 8160 | /* 15456*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 8161 | /* 15457*/ OPC_Scope, 98|128,1/*226*/, /*->15686*/ // 2 children in Scope |
| 8162 | /* 15460*/ OPC_MoveChild1, |
| 8163 | /* 15461*/ OPC_SwitchOpcode /*3 cases */, 71, TARGET_VAL(ISD::ADD),// ->15536 |
| 8164 | /* 15465*/ OPC_RecordChild0, // #1 = $addr |
| 8165 | /* 15466*/ OPC_RecordChild1, // #2 = $off |
| 8166 | /* 15467*/ OPC_MoveChild1, |
| 8167 | /* 15468*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8168 | /* 15471*/ OPC_MoveParent, |
| 8169 | /* 15472*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 8170 | /* 15474*/ OPC_SwitchType /*2 cases */, 28, MVT::i32,// ->15505 |
| 8171 | /* 15477*/ OPC_MoveParent, |
| 8172 | /* 15478*/ OPC_MoveChild2, |
| 8173 | /* 15479*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8174 | /* 15482*/ OPC_RecordChild0, // #3 = $val |
| 8175 | /* 15483*/ OPC_MoveParent, |
| 8176 | /* 15484*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 8177 | /* 15486*/ OPC_MoveParent, |
| 8178 | /* 15487*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8179 | /* 15489*/ OPC_EmitMergeInputChains1_0, |
| 8180 | /* 15490*/ OPC_EmitInteger, MVT::i32, 0, |
| 8181 | /* 15493*/ OPC_EmitConvertToTarget, 2, |
| 8182 | /* 15495*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8183 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8184 | // Src: (zext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_32>>) - Complexity = 17 |
| 8185 | // Dst: (ATOMIC_RMW32_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 8186 | /* 15505*/ /*SwitchType*/ 28, MVT::i64,// ->15535 |
| 8187 | /* 15507*/ OPC_MoveParent, |
| 8188 | /* 15508*/ OPC_MoveChild2, |
| 8189 | /* 15509*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8190 | /* 15512*/ OPC_RecordChild0, // #3 = $val |
| 8191 | /* 15513*/ OPC_MoveParent, |
| 8192 | /* 15514*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 8193 | /* 15516*/ OPC_MoveParent, |
| 8194 | /* 15517*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8195 | /* 15519*/ OPC_EmitMergeInputChains1_0, |
| 8196 | /* 15520*/ OPC_EmitInteger, MVT::i32, 0, |
| 8197 | /* 15523*/ OPC_EmitConvertToTarget, 2, |
| 8198 | /* 15525*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8199 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8200 | // Src: (zext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_32>>) - Complexity = 17 |
| 8201 | // Dst: (ATOMIC_RMW32_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 8202 | /* 15535*/ 0, // EndSwitchType |
| 8203 | /* 15536*/ /*SwitchOpcode*/ 71, TARGET_VAL(ISD::OR),// ->15610 |
| 8204 | /* 15539*/ OPC_RecordChild0, // #1 = $addr |
| 8205 | /* 15540*/ OPC_RecordChild1, // #2 = $off |
| 8206 | /* 15541*/ OPC_MoveChild1, |
| 8207 | /* 15542*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8208 | /* 15545*/ OPC_MoveParent, |
| 8209 | /* 15546*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 8210 | /* 15548*/ OPC_SwitchType /*2 cases */, 28, MVT::i32,// ->15579 |
| 8211 | /* 15551*/ OPC_MoveParent, |
| 8212 | /* 15552*/ OPC_MoveChild2, |
| 8213 | /* 15553*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8214 | /* 15556*/ OPC_RecordChild0, // #3 = $val |
| 8215 | /* 15557*/ OPC_MoveParent, |
| 8216 | /* 15558*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 8217 | /* 15560*/ OPC_MoveParent, |
| 8218 | /* 15561*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8219 | /* 15563*/ OPC_EmitMergeInputChains1_0, |
| 8220 | /* 15564*/ OPC_EmitInteger, MVT::i32, 0, |
| 8221 | /* 15567*/ OPC_EmitConvertToTarget, 2, |
| 8222 | /* 15569*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8223 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8224 | // Src: (zext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_32>>) - Complexity = 17 |
| 8225 | // Dst: (ATOMIC_RMW32_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 8226 | /* 15579*/ /*SwitchType*/ 28, MVT::i64,// ->15609 |
| 8227 | /* 15581*/ OPC_MoveParent, |
| 8228 | /* 15582*/ OPC_MoveChild2, |
| 8229 | /* 15583*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8230 | /* 15586*/ OPC_RecordChild0, // #3 = $val |
| 8231 | /* 15587*/ OPC_MoveParent, |
| 8232 | /* 15588*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 8233 | /* 15590*/ OPC_MoveParent, |
| 8234 | /* 15591*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8235 | /* 15593*/ OPC_EmitMergeInputChains1_0, |
| 8236 | /* 15594*/ OPC_EmitInteger, MVT::i32, 0, |
| 8237 | /* 15597*/ OPC_EmitConvertToTarget, 2, |
| 8238 | /* 15599*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8239 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8240 | // Src: (zext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_32>>) - Complexity = 17 |
| 8241 | // Dst: (ATOMIC_RMW32_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 8242 | /* 15609*/ 0, // EndSwitchType |
| 8243 | /* 15610*/ /*SwitchOpcode*/ 72, TARGET_VAL(WebAssemblyISD::Wrapper),// ->15685 |
| 8244 | /* 15613*/ OPC_RecordChild0, // #1 = $off |
| 8245 | /* 15614*/ OPC_MoveChild0, |
| 8246 | /* 15615*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 8247 | /* 15618*/ OPC_MoveParent, |
| 8248 | /* 15619*/ OPC_MoveParent, |
| 8249 | /* 15620*/ OPC_MoveChild2, |
| 8250 | /* 15621*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8251 | /* 15624*/ OPC_RecordChild0, // #2 = $val |
| 8252 | /* 15625*/ OPC_MoveParent, |
| 8253 | /* 15626*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 8254 | /* 15628*/ OPC_MoveParent, |
| 8255 | /* 15629*/ OPC_Scope, 26, /*->15657*/ // 2 children in Scope |
| 8256 | /* 15631*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 8257 | /* 15633*/ OPC_EmitMergeInputChains1_0, |
| 8258 | /* 15634*/ OPC_EmitInteger, MVT::i32, 0, |
| 8259 | /* 15637*/ OPC_EmitInteger, MVT::i32, 0, |
| 8260 | /* 15640*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 8261 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 8262 | /* 15647*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8263 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 8264 | // Src: (zext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_32>>) - Complexity = 16 |
| 8265 | // Dst: (ATOMIC_RMW32_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 8266 | /* 15657*/ /*Scope*/ 26, /*->15684*/ |
| 8267 | /* 15658*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 8268 | /* 15660*/ OPC_EmitMergeInputChains1_0, |
| 8269 | /* 15661*/ OPC_EmitInteger, MVT::i32, 0, |
| 8270 | /* 15664*/ OPC_EmitInteger, MVT::i64, 0, |
| 8271 | /* 15667*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 8272 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 8273 | /* 15674*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8274 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 8275 | // Src: (zext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_32>>) - Complexity = 16 |
| 8276 | // Dst: (ATOMIC_RMW32_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 8277 | /* 15684*/ 0, /*End of Scope*/ |
| 8278 | /* 15685*/ 0, // EndSwitchOpcode |
| 8279 | /* 15686*/ /*Scope*/ 12|128,1/*140*/, /*->15828*/ |
| 8280 | /* 15688*/ OPC_RecordChild1, // #1 = $off |
| 8281 | /* 15689*/ OPC_Scope, 74, /*->15765*/ // 3 children in Scope |
| 8282 | /* 15691*/ OPC_MoveChild1, |
| 8283 | /* 15692*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8284 | /* 15695*/ OPC_MoveParent, |
| 8285 | /* 15696*/ OPC_MoveChild2, |
| 8286 | /* 15697*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8287 | /* 15700*/ OPC_RecordChild0, // #2 = $val |
| 8288 | /* 15701*/ OPC_MoveParent, |
| 8289 | /* 15702*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 8290 | /* 15704*/ OPC_MoveParent, |
| 8291 | /* 15705*/ OPC_Scope, 28, /*->15735*/ // 2 children in Scope |
| 8292 | /* 15707*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8293 | /* 15709*/ OPC_EmitMergeInputChains1_0, |
| 8294 | /* 15710*/ OPC_EmitInteger, MVT::i32, 0, |
| 8295 | /* 15713*/ OPC_EmitConvertToTarget, 1, |
| 8296 | /* 15715*/ OPC_EmitInteger, MVT::i32, 0, |
| 8297 | /* 15718*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 8298 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 8299 | /* 15725*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8300 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 8301 | // Src: (zext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_32>>) - Complexity = 13 |
| 8302 | // Dst: (ATOMIC_RMW32_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 8303 | /* 15735*/ /*Scope*/ 28, /*->15764*/ |
| 8304 | /* 15736*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8305 | /* 15738*/ OPC_EmitMergeInputChains1_0, |
| 8306 | /* 15739*/ OPC_EmitInteger, MVT::i32, 0, |
| 8307 | /* 15742*/ OPC_EmitConvertToTarget, 1, |
| 8308 | /* 15744*/ OPC_EmitInteger, MVT::i64, 0, |
| 8309 | /* 15747*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 8310 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 8311 | /* 15754*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8312 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 8313 | // Src: (zext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_32>>) - Complexity = 13 |
| 8314 | // Dst: (ATOMIC_RMW32_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 8315 | /* 15764*/ 0, /*End of Scope*/ |
| 8316 | /* 15765*/ /*Scope*/ 30, /*->15796*/ |
| 8317 | /* 15766*/ OPC_CheckChild1Type, MVT::i32, |
| 8318 | /* 15768*/ OPC_MoveChild2, |
| 8319 | /* 15769*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8320 | /* 15772*/ OPC_RecordChild0, // #2 = $val |
| 8321 | /* 15773*/ OPC_MoveParent, |
| 8322 | /* 15774*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 8323 | /* 15776*/ OPC_MoveParent, |
| 8324 | /* 15777*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8325 | /* 15779*/ OPC_EmitMergeInputChains1_0, |
| 8326 | /* 15780*/ OPC_EmitInteger, MVT::i32, 0, |
| 8327 | /* 15783*/ OPC_EmitInteger, MVT::i32, 0, |
| 8328 | /* 15786*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8329 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 8330 | // Src: (zext:{ *:[i64] } (atomic_load_or:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_32>>) - Complexity = 10 |
| 8331 | // Dst: (ATOMIC_RMW32_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 8332 | /* 15796*/ /*Scope*/ 30, /*->15827*/ |
| 8333 | /* 15797*/ OPC_CheckChild1Type, MVT::i64, |
| 8334 | /* 15799*/ OPC_MoveChild2, |
| 8335 | /* 15800*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8336 | /* 15803*/ OPC_RecordChild0, // #2 = $val |
| 8337 | /* 15804*/ OPC_MoveParent, |
| 8338 | /* 15805*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 8339 | /* 15807*/ OPC_MoveParent, |
| 8340 | /* 15808*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8341 | /* 15810*/ OPC_EmitMergeInputChains1_0, |
| 8342 | /* 15811*/ OPC_EmitInteger, MVT::i32, 0, |
| 8343 | /* 15814*/ OPC_EmitInteger, MVT::i64, 0, |
| 8344 | /* 15817*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8345 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 8346 | // Src: (zext:{ *:[i64] } (atomic_load_or:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_32>>) - Complexity = 10 |
| 8347 | // Dst: (ATOMIC_RMW32_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 8348 | /* 15827*/ 0, /*End of Scope*/ |
| 8349 | /* 15828*/ 0, /*End of Scope*/ |
| 8350 | /* 15829*/ /*SwitchOpcode*/ 118|128,2/*374*/, TARGET_VAL(ISD::ATOMIC_LOAD_XOR),// ->16207 |
| 8351 | /* 15833*/ OPC_RecordMemRef, |
| 8352 | /* 15834*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 8353 | /* 15835*/ OPC_Scope, 98|128,1/*226*/, /*->16064*/ // 2 children in Scope |
| 8354 | /* 15838*/ OPC_MoveChild1, |
| 8355 | /* 15839*/ OPC_SwitchOpcode /*3 cases */, 71, TARGET_VAL(ISD::ADD),// ->15914 |
| 8356 | /* 15843*/ OPC_RecordChild0, // #1 = $addr |
| 8357 | /* 15844*/ OPC_RecordChild1, // #2 = $off |
| 8358 | /* 15845*/ OPC_MoveChild1, |
| 8359 | /* 15846*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8360 | /* 15849*/ OPC_MoveParent, |
| 8361 | /* 15850*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 8362 | /* 15852*/ OPC_SwitchType /*2 cases */, 28, MVT::i32,// ->15883 |
| 8363 | /* 15855*/ OPC_MoveParent, |
| 8364 | /* 15856*/ OPC_MoveChild2, |
| 8365 | /* 15857*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8366 | /* 15860*/ OPC_RecordChild0, // #3 = $val |
| 8367 | /* 15861*/ OPC_MoveParent, |
| 8368 | /* 15862*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 8369 | /* 15864*/ OPC_MoveParent, |
| 8370 | /* 15865*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8371 | /* 15867*/ OPC_EmitMergeInputChains1_0, |
| 8372 | /* 15868*/ OPC_EmitInteger, MVT::i32, 0, |
| 8373 | /* 15871*/ OPC_EmitConvertToTarget, 2, |
| 8374 | /* 15873*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8375 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8376 | // Src: (zext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_32>>) - Complexity = 17 |
| 8377 | // Dst: (ATOMIC_RMW32_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 8378 | /* 15883*/ /*SwitchType*/ 28, MVT::i64,// ->15913 |
| 8379 | /* 15885*/ OPC_MoveParent, |
| 8380 | /* 15886*/ OPC_MoveChild2, |
| 8381 | /* 15887*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8382 | /* 15890*/ OPC_RecordChild0, // #3 = $val |
| 8383 | /* 15891*/ OPC_MoveParent, |
| 8384 | /* 15892*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 8385 | /* 15894*/ OPC_MoveParent, |
| 8386 | /* 15895*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8387 | /* 15897*/ OPC_EmitMergeInputChains1_0, |
| 8388 | /* 15898*/ OPC_EmitInteger, MVT::i32, 0, |
| 8389 | /* 15901*/ OPC_EmitConvertToTarget, 2, |
| 8390 | /* 15903*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8391 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8392 | // Src: (zext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_32>>) - Complexity = 17 |
| 8393 | // Dst: (ATOMIC_RMW32_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 8394 | /* 15913*/ 0, // EndSwitchType |
| 8395 | /* 15914*/ /*SwitchOpcode*/ 71, TARGET_VAL(ISD::OR),// ->15988 |
| 8396 | /* 15917*/ OPC_RecordChild0, // #1 = $addr |
| 8397 | /* 15918*/ OPC_RecordChild1, // #2 = $off |
| 8398 | /* 15919*/ OPC_MoveChild1, |
| 8399 | /* 15920*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8400 | /* 15923*/ OPC_MoveParent, |
| 8401 | /* 15924*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 8402 | /* 15926*/ OPC_SwitchType /*2 cases */, 28, MVT::i32,// ->15957 |
| 8403 | /* 15929*/ OPC_MoveParent, |
| 8404 | /* 15930*/ OPC_MoveChild2, |
| 8405 | /* 15931*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8406 | /* 15934*/ OPC_RecordChild0, // #3 = $val |
| 8407 | /* 15935*/ OPC_MoveParent, |
| 8408 | /* 15936*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 8409 | /* 15938*/ OPC_MoveParent, |
| 8410 | /* 15939*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8411 | /* 15941*/ OPC_EmitMergeInputChains1_0, |
| 8412 | /* 15942*/ OPC_EmitInteger, MVT::i32, 0, |
| 8413 | /* 15945*/ OPC_EmitConvertToTarget, 2, |
| 8414 | /* 15947*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8415 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8416 | // Src: (zext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_32>>) - Complexity = 17 |
| 8417 | // Dst: (ATOMIC_RMW32_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 8418 | /* 15957*/ /*SwitchType*/ 28, MVT::i64,// ->15987 |
| 8419 | /* 15959*/ OPC_MoveParent, |
| 8420 | /* 15960*/ OPC_MoveChild2, |
| 8421 | /* 15961*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8422 | /* 15964*/ OPC_RecordChild0, // #3 = $val |
| 8423 | /* 15965*/ OPC_MoveParent, |
| 8424 | /* 15966*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 8425 | /* 15968*/ OPC_MoveParent, |
| 8426 | /* 15969*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8427 | /* 15971*/ OPC_EmitMergeInputChains1_0, |
| 8428 | /* 15972*/ OPC_EmitInteger, MVT::i32, 0, |
| 8429 | /* 15975*/ OPC_EmitConvertToTarget, 2, |
| 8430 | /* 15977*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8431 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8432 | // Src: (zext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_32>>) - Complexity = 17 |
| 8433 | // Dst: (ATOMIC_RMW32_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 8434 | /* 15987*/ 0, // EndSwitchType |
| 8435 | /* 15988*/ /*SwitchOpcode*/ 72, TARGET_VAL(WebAssemblyISD::Wrapper),// ->16063 |
| 8436 | /* 15991*/ OPC_RecordChild0, // #1 = $off |
| 8437 | /* 15992*/ OPC_MoveChild0, |
| 8438 | /* 15993*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 8439 | /* 15996*/ OPC_MoveParent, |
| 8440 | /* 15997*/ OPC_MoveParent, |
| 8441 | /* 15998*/ OPC_MoveChild2, |
| 8442 | /* 15999*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8443 | /* 16002*/ OPC_RecordChild0, // #2 = $val |
| 8444 | /* 16003*/ OPC_MoveParent, |
| 8445 | /* 16004*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 8446 | /* 16006*/ OPC_MoveParent, |
| 8447 | /* 16007*/ OPC_Scope, 26, /*->16035*/ // 2 children in Scope |
| 8448 | /* 16009*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 8449 | /* 16011*/ OPC_EmitMergeInputChains1_0, |
| 8450 | /* 16012*/ OPC_EmitInteger, MVT::i32, 0, |
| 8451 | /* 16015*/ OPC_EmitInteger, MVT::i32, 0, |
| 8452 | /* 16018*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 8453 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 8454 | /* 16025*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8455 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 8456 | // Src: (zext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_32>>) - Complexity = 16 |
| 8457 | // Dst: (ATOMIC_RMW32_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 8458 | /* 16035*/ /*Scope*/ 26, /*->16062*/ |
| 8459 | /* 16036*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 8460 | /* 16038*/ OPC_EmitMergeInputChains1_0, |
| 8461 | /* 16039*/ OPC_EmitInteger, MVT::i32, 0, |
| 8462 | /* 16042*/ OPC_EmitInteger, MVT::i64, 0, |
| 8463 | /* 16045*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 8464 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 8465 | /* 16052*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8466 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 8467 | // Src: (zext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_32>>) - Complexity = 16 |
| 8468 | // Dst: (ATOMIC_RMW32_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 8469 | /* 16062*/ 0, /*End of Scope*/ |
| 8470 | /* 16063*/ 0, // EndSwitchOpcode |
| 8471 | /* 16064*/ /*Scope*/ 12|128,1/*140*/, /*->16206*/ |
| 8472 | /* 16066*/ OPC_RecordChild1, // #1 = $off |
| 8473 | /* 16067*/ OPC_Scope, 74, /*->16143*/ // 3 children in Scope |
| 8474 | /* 16069*/ OPC_MoveChild1, |
| 8475 | /* 16070*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8476 | /* 16073*/ OPC_MoveParent, |
| 8477 | /* 16074*/ OPC_MoveChild2, |
| 8478 | /* 16075*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8479 | /* 16078*/ OPC_RecordChild0, // #2 = $val |
| 8480 | /* 16079*/ OPC_MoveParent, |
| 8481 | /* 16080*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 8482 | /* 16082*/ OPC_MoveParent, |
| 8483 | /* 16083*/ OPC_Scope, 28, /*->16113*/ // 2 children in Scope |
| 8484 | /* 16085*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8485 | /* 16087*/ OPC_EmitMergeInputChains1_0, |
| 8486 | /* 16088*/ OPC_EmitInteger, MVT::i32, 0, |
| 8487 | /* 16091*/ OPC_EmitConvertToTarget, 1, |
| 8488 | /* 16093*/ OPC_EmitInteger, MVT::i32, 0, |
| 8489 | /* 16096*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 8490 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 8491 | /* 16103*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8492 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 8493 | // Src: (zext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_32>>) - Complexity = 13 |
| 8494 | // Dst: (ATOMIC_RMW32_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 8495 | /* 16113*/ /*Scope*/ 28, /*->16142*/ |
| 8496 | /* 16114*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8497 | /* 16116*/ OPC_EmitMergeInputChains1_0, |
| 8498 | /* 16117*/ OPC_EmitInteger, MVT::i32, 0, |
| 8499 | /* 16120*/ OPC_EmitConvertToTarget, 1, |
| 8500 | /* 16122*/ OPC_EmitInteger, MVT::i64, 0, |
| 8501 | /* 16125*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 8502 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 8503 | /* 16132*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8504 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 8505 | // Src: (zext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_32>>) - Complexity = 13 |
| 8506 | // Dst: (ATOMIC_RMW32_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 8507 | /* 16142*/ 0, /*End of Scope*/ |
| 8508 | /* 16143*/ /*Scope*/ 30, /*->16174*/ |
| 8509 | /* 16144*/ OPC_CheckChild1Type, MVT::i32, |
| 8510 | /* 16146*/ OPC_MoveChild2, |
| 8511 | /* 16147*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8512 | /* 16150*/ OPC_RecordChild0, // #2 = $val |
| 8513 | /* 16151*/ OPC_MoveParent, |
| 8514 | /* 16152*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 8515 | /* 16154*/ OPC_MoveParent, |
| 8516 | /* 16155*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8517 | /* 16157*/ OPC_EmitMergeInputChains1_0, |
| 8518 | /* 16158*/ OPC_EmitInteger, MVT::i32, 0, |
| 8519 | /* 16161*/ OPC_EmitInteger, MVT::i32, 0, |
| 8520 | /* 16164*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8521 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 8522 | // Src: (zext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_32>>) - Complexity = 10 |
| 8523 | // Dst: (ATOMIC_RMW32_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 8524 | /* 16174*/ /*Scope*/ 30, /*->16205*/ |
| 8525 | /* 16175*/ OPC_CheckChild1Type, MVT::i64, |
| 8526 | /* 16177*/ OPC_MoveChild2, |
| 8527 | /* 16178*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8528 | /* 16181*/ OPC_RecordChild0, // #2 = $val |
| 8529 | /* 16182*/ OPC_MoveParent, |
| 8530 | /* 16183*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 8531 | /* 16185*/ OPC_MoveParent, |
| 8532 | /* 16186*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8533 | /* 16188*/ OPC_EmitMergeInputChains1_0, |
| 8534 | /* 16189*/ OPC_EmitInteger, MVT::i32, 0, |
| 8535 | /* 16192*/ OPC_EmitInteger, MVT::i64, 0, |
| 8536 | /* 16195*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8537 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 8538 | // Src: (zext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_32>>) - Complexity = 10 |
| 8539 | // Dst: (ATOMIC_RMW32_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 8540 | /* 16205*/ 0, /*End of Scope*/ |
| 8541 | /* 16206*/ 0, /*End of Scope*/ |
| 8542 | /* 16207*/ /*SwitchOpcode*/ 118|128,2/*374*/, TARGET_VAL(ISD::ATOMIC_SWAP),// ->16585 |
| 8543 | /* 16211*/ OPC_RecordMemRef, |
| 8544 | /* 16212*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 8545 | /* 16213*/ OPC_Scope, 98|128,1/*226*/, /*->16442*/ // 2 children in Scope |
| 8546 | /* 16216*/ OPC_MoveChild1, |
| 8547 | /* 16217*/ OPC_SwitchOpcode /*3 cases */, 71, TARGET_VAL(ISD::ADD),// ->16292 |
| 8548 | /* 16221*/ OPC_RecordChild0, // #1 = $addr |
| 8549 | /* 16222*/ OPC_RecordChild1, // #2 = $off |
| 8550 | /* 16223*/ OPC_MoveChild1, |
| 8551 | /* 16224*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8552 | /* 16227*/ OPC_MoveParent, |
| 8553 | /* 16228*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 8554 | /* 16230*/ OPC_SwitchType /*2 cases */, 28, MVT::i32,// ->16261 |
| 8555 | /* 16233*/ OPC_MoveParent, |
| 8556 | /* 16234*/ OPC_MoveChild2, |
| 8557 | /* 16235*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8558 | /* 16238*/ OPC_RecordChild0, // #3 = $val |
| 8559 | /* 16239*/ OPC_MoveParent, |
| 8560 | /* 16240*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 8561 | /* 16242*/ OPC_MoveParent, |
| 8562 | /* 16243*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8563 | /* 16245*/ OPC_EmitMergeInputChains1_0, |
| 8564 | /* 16246*/ OPC_EmitInteger, MVT::i32, 0, |
| 8565 | /* 16249*/ OPC_EmitConvertToTarget, 2, |
| 8566 | /* 16251*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8567 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8568 | // Src: (zext:{ *:[i64] } (atomic_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_32>>) - Complexity = 17 |
| 8569 | // Dst: (ATOMIC_RMW32_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 8570 | /* 16261*/ /*SwitchType*/ 28, MVT::i64,// ->16291 |
| 8571 | /* 16263*/ OPC_MoveParent, |
| 8572 | /* 16264*/ OPC_MoveChild2, |
| 8573 | /* 16265*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8574 | /* 16268*/ OPC_RecordChild0, // #3 = $val |
| 8575 | /* 16269*/ OPC_MoveParent, |
| 8576 | /* 16270*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 8577 | /* 16272*/ OPC_MoveParent, |
| 8578 | /* 16273*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8579 | /* 16275*/ OPC_EmitMergeInputChains1_0, |
| 8580 | /* 16276*/ OPC_EmitInteger, MVT::i32, 0, |
| 8581 | /* 16279*/ OPC_EmitConvertToTarget, 2, |
| 8582 | /* 16281*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8583 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8584 | // Src: (zext:{ *:[i64] } (atomic_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_32>>) - Complexity = 17 |
| 8585 | // Dst: (ATOMIC_RMW32_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 8586 | /* 16291*/ 0, // EndSwitchType |
| 8587 | /* 16292*/ /*SwitchOpcode*/ 71, TARGET_VAL(ISD::OR),// ->16366 |
| 8588 | /* 16295*/ OPC_RecordChild0, // #1 = $addr |
| 8589 | /* 16296*/ OPC_RecordChild1, // #2 = $off |
| 8590 | /* 16297*/ OPC_MoveChild1, |
| 8591 | /* 16298*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8592 | /* 16301*/ OPC_MoveParent, |
| 8593 | /* 16302*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 8594 | /* 16304*/ OPC_SwitchType /*2 cases */, 28, MVT::i32,// ->16335 |
| 8595 | /* 16307*/ OPC_MoveParent, |
| 8596 | /* 16308*/ OPC_MoveChild2, |
| 8597 | /* 16309*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8598 | /* 16312*/ OPC_RecordChild0, // #3 = $val |
| 8599 | /* 16313*/ OPC_MoveParent, |
| 8600 | /* 16314*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 8601 | /* 16316*/ OPC_MoveParent, |
| 8602 | /* 16317*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8603 | /* 16319*/ OPC_EmitMergeInputChains1_0, |
| 8604 | /* 16320*/ OPC_EmitInteger, MVT::i32, 0, |
| 8605 | /* 16323*/ OPC_EmitConvertToTarget, 2, |
| 8606 | /* 16325*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8607 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8608 | // Src: (zext:{ *:[i64] } (atomic_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_32>>) - Complexity = 17 |
| 8609 | // Dst: (ATOMIC_RMW32_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 8610 | /* 16335*/ /*SwitchType*/ 28, MVT::i64,// ->16365 |
| 8611 | /* 16337*/ OPC_MoveParent, |
| 8612 | /* 16338*/ OPC_MoveChild2, |
| 8613 | /* 16339*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8614 | /* 16342*/ OPC_RecordChild0, // #3 = $val |
| 8615 | /* 16343*/ OPC_MoveParent, |
| 8616 | /* 16344*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 8617 | /* 16346*/ OPC_MoveParent, |
| 8618 | /* 16347*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8619 | /* 16349*/ OPC_EmitMergeInputChains1_0, |
| 8620 | /* 16350*/ OPC_EmitInteger, MVT::i32, 0, |
| 8621 | /* 16353*/ OPC_EmitConvertToTarget, 2, |
| 8622 | /* 16355*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8623 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 8624 | // Src: (zext:{ *:[i64] } (atomic_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_32>>) - Complexity = 17 |
| 8625 | // Dst: (ATOMIC_RMW32_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 8626 | /* 16365*/ 0, // EndSwitchType |
| 8627 | /* 16366*/ /*SwitchOpcode*/ 72, TARGET_VAL(WebAssemblyISD::Wrapper),// ->16441 |
| 8628 | /* 16369*/ OPC_RecordChild0, // #1 = $off |
| 8629 | /* 16370*/ OPC_MoveChild0, |
| 8630 | /* 16371*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 8631 | /* 16374*/ OPC_MoveParent, |
| 8632 | /* 16375*/ OPC_MoveParent, |
| 8633 | /* 16376*/ OPC_MoveChild2, |
| 8634 | /* 16377*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8635 | /* 16380*/ OPC_RecordChild0, // #2 = $val |
| 8636 | /* 16381*/ OPC_MoveParent, |
| 8637 | /* 16382*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 8638 | /* 16384*/ OPC_MoveParent, |
| 8639 | /* 16385*/ OPC_Scope, 26, /*->16413*/ // 2 children in Scope |
| 8640 | /* 16387*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 8641 | /* 16389*/ OPC_EmitMergeInputChains1_0, |
| 8642 | /* 16390*/ OPC_EmitInteger, MVT::i32, 0, |
| 8643 | /* 16393*/ OPC_EmitInteger, MVT::i32, 0, |
| 8644 | /* 16396*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 8645 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 8646 | /* 16403*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8647 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 8648 | // Src: (zext:{ *:[i64] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_32>>) - Complexity = 16 |
| 8649 | // Dst: (ATOMIC_RMW32_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 8650 | /* 16413*/ /*Scope*/ 26, /*->16440*/ |
| 8651 | /* 16414*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 8652 | /* 16416*/ OPC_EmitMergeInputChains1_0, |
| 8653 | /* 16417*/ OPC_EmitInteger, MVT::i32, 0, |
| 8654 | /* 16420*/ OPC_EmitInteger, MVT::i64, 0, |
| 8655 | /* 16423*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 8656 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 8657 | /* 16430*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8658 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 8659 | // Src: (zext:{ *:[i64] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_32>>) - Complexity = 16 |
| 8660 | // Dst: (ATOMIC_RMW32_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 8661 | /* 16440*/ 0, /*End of Scope*/ |
| 8662 | /* 16441*/ 0, // EndSwitchOpcode |
| 8663 | /* 16442*/ /*Scope*/ 12|128,1/*140*/, /*->16584*/ |
| 8664 | /* 16444*/ OPC_RecordChild1, // #1 = $off |
| 8665 | /* 16445*/ OPC_Scope, 74, /*->16521*/ // 3 children in Scope |
| 8666 | /* 16447*/ OPC_MoveChild1, |
| 8667 | /* 16448*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8668 | /* 16451*/ OPC_MoveParent, |
| 8669 | /* 16452*/ OPC_MoveChild2, |
| 8670 | /* 16453*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8671 | /* 16456*/ OPC_RecordChild0, // #2 = $val |
| 8672 | /* 16457*/ OPC_MoveParent, |
| 8673 | /* 16458*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 8674 | /* 16460*/ OPC_MoveParent, |
| 8675 | /* 16461*/ OPC_Scope, 28, /*->16491*/ // 2 children in Scope |
| 8676 | /* 16463*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8677 | /* 16465*/ OPC_EmitMergeInputChains1_0, |
| 8678 | /* 16466*/ OPC_EmitInteger, MVT::i32, 0, |
| 8679 | /* 16469*/ OPC_EmitConvertToTarget, 1, |
| 8680 | /* 16471*/ OPC_EmitInteger, MVT::i32, 0, |
| 8681 | /* 16474*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 8682 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 8683 | /* 16481*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8684 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 8685 | // Src: (zext:{ *:[i64] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_32>>) - Complexity = 13 |
| 8686 | // Dst: (ATOMIC_RMW32_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 8687 | /* 16491*/ /*Scope*/ 28, /*->16520*/ |
| 8688 | /* 16492*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8689 | /* 16494*/ OPC_EmitMergeInputChains1_0, |
| 8690 | /* 16495*/ OPC_EmitInteger, MVT::i32, 0, |
| 8691 | /* 16498*/ OPC_EmitConvertToTarget, 1, |
| 8692 | /* 16500*/ OPC_EmitInteger, MVT::i64, 0, |
| 8693 | /* 16503*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 8694 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 8695 | /* 16510*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8696 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 8697 | // Src: (zext:{ *:[i64] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_32>>) - Complexity = 13 |
| 8698 | // Dst: (ATOMIC_RMW32_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 8699 | /* 16520*/ 0, /*End of Scope*/ |
| 8700 | /* 16521*/ /*Scope*/ 30, /*->16552*/ |
| 8701 | /* 16522*/ OPC_CheckChild1Type, MVT::i32, |
| 8702 | /* 16524*/ OPC_MoveChild2, |
| 8703 | /* 16525*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8704 | /* 16528*/ OPC_RecordChild0, // #2 = $val |
| 8705 | /* 16529*/ OPC_MoveParent, |
| 8706 | /* 16530*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 8707 | /* 16532*/ OPC_MoveParent, |
| 8708 | /* 16533*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8709 | /* 16535*/ OPC_EmitMergeInputChains1_0, |
| 8710 | /* 16536*/ OPC_EmitInteger, MVT::i32, 0, |
| 8711 | /* 16539*/ OPC_EmitInteger, MVT::i32, 0, |
| 8712 | /* 16542*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8713 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 8714 | // Src: (zext:{ *:[i64] } (atomic_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_32>>) - Complexity = 10 |
| 8715 | // Dst: (ATOMIC_RMW32_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 8716 | /* 16552*/ /*Scope*/ 30, /*->16583*/ |
| 8717 | /* 16553*/ OPC_CheckChild1Type, MVT::i64, |
| 8718 | /* 16555*/ OPC_MoveChild2, |
| 8719 | /* 16556*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8720 | /* 16559*/ OPC_RecordChild0, // #2 = $val |
| 8721 | /* 16560*/ OPC_MoveParent, |
| 8722 | /* 16561*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 8723 | /* 16563*/ OPC_MoveParent, |
| 8724 | /* 16564*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8725 | /* 16566*/ OPC_EmitMergeInputChains1_0, |
| 8726 | /* 16567*/ OPC_EmitInteger, MVT::i32, 0, |
| 8727 | /* 16570*/ OPC_EmitInteger, MVT::i64, 0, |
| 8728 | /* 16573*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8729 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 8730 | // Src: (zext:{ *:[i64] } (atomic_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_32>>) - Complexity = 10 |
| 8731 | // Dst: (ATOMIC_RMW32_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 8732 | /* 16583*/ 0, /*End of Scope*/ |
| 8733 | /* 16584*/ 0, /*End of Scope*/ |
| 8734 | /* 16585*/ /*SwitchOpcode*/ 43|128,2/*299*/, TARGET_VAL(ISD::ATOMIC_LOAD),// ->16888 |
| 8735 | /* 16589*/ OPC_RecordMemRef, |
| 8736 | /* 16590*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 8737 | /* 16591*/ OPC_Scope, 52|128,1/*180*/, /*->16774*/ // 2 children in Scope |
| 8738 | /* 16594*/ OPC_MoveChild1, |
| 8739 | /* 16595*/ OPC_SwitchOpcode /*3 cases */, 53, TARGET_VAL(ISD::ADD),// ->16652 |
| 8740 | /* 16599*/ OPC_RecordChild0, // #1 = $addr |
| 8741 | /* 16600*/ OPC_RecordChild1, // #2 = $off |
| 8742 | /* 16601*/ OPC_MoveChild1, |
| 8743 | /* 16602*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8744 | /* 16605*/ OPC_MoveParent, |
| 8745 | /* 16606*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 8746 | /* 16608*/ OPC_SwitchType /*2 cases */, 19, MVT::i32,// ->16630 |
| 8747 | /* 16611*/ OPC_MoveParent, |
| 8748 | /* 16612*/ OPC_MoveParent, |
| 8749 | /* 16613*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 8750 | /* 16615*/ OPC_EmitMergeInputChains1_0, |
| 8751 | /* 16616*/ OPC_EmitInteger, MVT::i32, 0, |
| 8752 | /* 16619*/ OPC_EmitConvertToTarget, 2, |
| 8753 | /* 16621*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8754 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 8755 | // Src: (zext:{ *:[i64] } (atomic_load:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)) - Complexity = 13 |
| 8756 | // Dst: (ATOMIC_LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 8757 | /* 16630*/ /*SwitchType*/ 19, MVT::i64,// ->16651 |
| 8758 | /* 16632*/ OPC_MoveParent, |
| 8759 | /* 16633*/ OPC_MoveParent, |
| 8760 | /* 16634*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 8761 | /* 16636*/ OPC_EmitMergeInputChains1_0, |
| 8762 | /* 16637*/ OPC_EmitInteger, MVT::i32, 0, |
| 8763 | /* 16640*/ OPC_EmitConvertToTarget, 2, |
| 8764 | /* 16642*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8765 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 8766 | // Src: (zext:{ *:[i64] } (atomic_load:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)) - Complexity = 13 |
| 8767 | // Dst: (ATOMIC_LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 8768 | /* 16651*/ 0, // EndSwitchType |
| 8769 | /* 16652*/ /*SwitchOpcode*/ 53, TARGET_VAL(ISD::OR),// ->16708 |
| 8770 | /* 16655*/ OPC_RecordChild0, // #1 = $addr |
| 8771 | /* 16656*/ OPC_RecordChild1, // #2 = $off |
| 8772 | /* 16657*/ OPC_MoveChild1, |
| 8773 | /* 16658*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8774 | /* 16661*/ OPC_MoveParent, |
| 8775 | /* 16662*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 8776 | /* 16664*/ OPC_SwitchType /*2 cases */, 19, MVT::i32,// ->16686 |
| 8777 | /* 16667*/ OPC_MoveParent, |
| 8778 | /* 16668*/ OPC_MoveParent, |
| 8779 | /* 16669*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 8780 | /* 16671*/ OPC_EmitMergeInputChains1_0, |
| 8781 | /* 16672*/ OPC_EmitInteger, MVT::i32, 0, |
| 8782 | /* 16675*/ OPC_EmitConvertToTarget, 2, |
| 8783 | /* 16677*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8784 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 8785 | // Src: (zext:{ *:[i64] } (atomic_load:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)) - Complexity = 13 |
| 8786 | // Dst: (ATOMIC_LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 8787 | /* 16686*/ /*SwitchType*/ 19, MVT::i64,// ->16707 |
| 8788 | /* 16688*/ OPC_MoveParent, |
| 8789 | /* 16689*/ OPC_MoveParent, |
| 8790 | /* 16690*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 8791 | /* 16692*/ OPC_EmitMergeInputChains1_0, |
| 8792 | /* 16693*/ OPC_EmitInteger, MVT::i32, 0, |
| 8793 | /* 16696*/ OPC_EmitConvertToTarget, 2, |
| 8794 | /* 16698*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8795 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 8796 | // Src: (zext:{ *:[i64] } (atomic_load:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)) - Complexity = 13 |
| 8797 | // Dst: (ATOMIC_LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 8798 | /* 16707*/ 0, // EndSwitchType |
| 8799 | /* 16708*/ /*SwitchOpcode*/ 62, TARGET_VAL(WebAssemblyISD::Wrapper),// ->16773 |
| 8800 | /* 16711*/ OPC_RecordChild0, // #1 = $off |
| 8801 | /* 16712*/ OPC_MoveChild0, |
| 8802 | /* 16713*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 8803 | /* 16716*/ OPC_MoveParent, |
| 8804 | /* 16717*/ OPC_MoveParent, |
| 8805 | /* 16718*/ OPC_MoveParent, |
| 8806 | /* 16719*/ OPC_Scope, 25, /*->16746*/ // 2 children in Scope |
| 8807 | /* 16721*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 8808 | /* 16723*/ OPC_EmitMergeInputChains1_0, |
| 8809 | /* 16724*/ OPC_EmitInteger, MVT::i32, 0, |
| 8810 | /* 16727*/ OPC_EmitInteger, MVT::i32, 0, |
| 8811 | /* 16730*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 8812 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 8813 | /* 16737*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8814 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 8815 | // Src: (zext:{ *:[i64] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))) - Complexity = 12 |
| 8816 | // Dst: (ATOMIC_LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 8817 | /* 16746*/ /*Scope*/ 25, /*->16772*/ |
| 8818 | /* 16747*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 8819 | /* 16749*/ OPC_EmitMergeInputChains1_0, |
| 8820 | /* 16750*/ OPC_EmitInteger, MVT::i32, 0, |
| 8821 | /* 16753*/ OPC_EmitInteger, MVT::i64, 0, |
| 8822 | /* 16756*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 8823 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 8824 | /* 16763*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8825 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 8826 | // Src: (zext:{ *:[i64] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))) - Complexity = 12 |
| 8827 | // Dst: (ATOMIC_LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 8828 | /* 16772*/ 0, /*End of Scope*/ |
| 8829 | /* 16773*/ 0, // EndSwitchOpcode |
| 8830 | /* 16774*/ /*Scope*/ 112, /*->16887*/ |
| 8831 | /* 16775*/ OPC_RecordChild1, // #1 = $off |
| 8832 | /* 16776*/ OPC_Scope, 64, /*->16842*/ // 3 children in Scope |
| 8833 | /* 16778*/ OPC_MoveChild1, |
| 8834 | /* 16779*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8835 | /* 16782*/ OPC_MoveParent, |
| 8836 | /* 16783*/ OPC_MoveParent, |
| 8837 | /* 16784*/ OPC_Scope, 27, /*->16813*/ // 2 children in Scope |
| 8838 | /* 16786*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 8839 | /* 16788*/ OPC_EmitMergeInputChains1_0, |
| 8840 | /* 16789*/ OPC_EmitInteger, MVT::i32, 0, |
| 8841 | /* 16792*/ OPC_EmitConvertToTarget, 1, |
| 8842 | /* 16794*/ OPC_EmitInteger, MVT::i32, 0, |
| 8843 | /* 16797*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 8844 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 8845 | /* 16804*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8846 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 8847 | // Src: (zext:{ *:[i64] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 8848 | // Dst: (ATOMIC_LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 8849 | /* 16813*/ /*Scope*/ 27, /*->16841*/ |
| 8850 | /* 16814*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 8851 | /* 16816*/ OPC_EmitMergeInputChains1_0, |
| 8852 | /* 16817*/ OPC_EmitInteger, MVT::i32, 0, |
| 8853 | /* 16820*/ OPC_EmitConvertToTarget, 1, |
| 8854 | /* 16822*/ OPC_EmitInteger, MVT::i64, 0, |
| 8855 | /* 16825*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 8856 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 8857 | /* 16832*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8858 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 8859 | // Src: (zext:{ *:[i64] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 8860 | // Dst: (ATOMIC_LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 8861 | /* 16841*/ 0, /*End of Scope*/ |
| 8862 | /* 16842*/ /*Scope*/ 21, /*->16864*/ |
| 8863 | /* 16843*/ OPC_CheckChild1Type, MVT::i32, |
| 8864 | /* 16845*/ OPC_MoveParent, |
| 8865 | /* 16846*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 8866 | /* 16848*/ OPC_EmitMergeInputChains1_0, |
| 8867 | /* 16849*/ OPC_EmitInteger, MVT::i32, 0, |
| 8868 | /* 16852*/ OPC_EmitInteger, MVT::i32, 0, |
| 8869 | /* 16855*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8870 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 8871 | // Src: (zext:{ *:[i64] } (atomic_load:{ *:[i32] } I32:{ *:[i32] }:$addr)) - Complexity = 6 |
| 8872 | // Dst: (ATOMIC_LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 8873 | /* 16864*/ /*Scope*/ 21, /*->16886*/ |
| 8874 | /* 16865*/ OPC_CheckChild1Type, MVT::i64, |
| 8875 | /* 16867*/ OPC_MoveParent, |
| 8876 | /* 16868*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 8877 | /* 16870*/ OPC_EmitMergeInputChains1_0, |
| 8878 | /* 16871*/ OPC_EmitInteger, MVT::i32, 0, |
| 8879 | /* 16874*/ OPC_EmitInteger, MVT::i64, 0, |
| 8880 | /* 16877*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8881 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 8882 | // Src: (zext:{ *:[i64] } (atomic_load:{ *:[i32] } I64:{ *:[i64] }:$addr)) - Complexity = 6 |
| 8883 | // Dst: (ATOMIC_LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 8884 | /* 16886*/ 0, /*End of Scope*/ |
| 8885 | /* 16887*/ 0, /*End of Scope*/ |
| 8886 | /* 16888*/ 0, // EndSwitchOpcode |
| 8887 | /* 16889*/ /*Scope*/ 8, /*->16898*/ |
| 8888 | /* 16890*/ OPC_RecordChild0, // #0 = $src |
| 8889 | /* 16891*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_EXTEND_U_I32), 0, |
| 8890 | MVT::i64, 1/*#Ops*/, 0, |
| 8891 | // Src: (zext:{ *:[i64] } I32:{ *:[i32] }:$src) - Complexity = 3 |
| 8892 | // Dst: (I64_EXTEND_U_I32:{ *:[i64] } I32:{ *:[i32] }:$src) |
| 8893 | /* 16898*/ 0, /*End of Scope*/ |
| 8894 | /* 16899*/ /*SwitchOpcode*/ 66|128,41/*5314*/, TARGET_VAL(ISD::ANY_EXTEND),// ->22217 |
| 8895 | /* 16903*/ OPC_Scope, 53|128,41/*5301*/, /*->22207*/ // 2 children in Scope |
| 8896 | /* 16906*/ OPC_MoveChild0, |
| 8897 | /* 16907*/ OPC_SwitchOpcode /*8 cases */, 89|128,5/*729*/, TARGET_VAL(ISD::AssertZext),// ->17641 |
| 8898 | /* 16912*/ OPC_MoveChild0, |
| 8899 | /* 16913*/ OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| 8900 | /* 16916*/ OPC_RecordMemRef, |
| 8901 | /* 16917*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 8902 | /* 16918*/ OPC_CheckFoldableChainNode, |
| 8903 | /* 16919*/ OPC_Scope, 60|128,3/*444*/, /*->17366*/ // 2 children in Scope |
| 8904 | /* 16922*/ OPC_MoveChild1, |
| 8905 | /* 16923*/ OPC_SwitchOpcode /*3 cases */, 13|128,1/*141*/, TARGET_VAL(ISD::ADD),// ->17069 |
| 8906 | /* 16928*/ OPC_RecordChild0, // #1 = $addr |
| 8907 | /* 16929*/ OPC_RecordChild1, // #2 = $off |
| 8908 | /* 16930*/ OPC_MoveChild1, |
| 8909 | /* 16931*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8910 | /* 16934*/ OPC_MoveParent, |
| 8911 | /* 16935*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 8912 | /* 16937*/ OPC_SwitchType /*2 cases */, 63, MVT::i32,// ->17003 |
| 8913 | /* 16940*/ OPC_MoveParent, |
| 8914 | /* 16941*/ OPC_MoveChild2, |
| 8915 | /* 16942*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8916 | /* 16945*/ OPC_RecordChild0, // #3 = $exp |
| 8917 | /* 16946*/ OPC_MoveParent, |
| 8918 | /* 16947*/ OPC_MoveChild3, |
| 8919 | /* 16948*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8920 | /* 16951*/ OPC_RecordChild0, // #4 = $new |
| 8921 | /* 16952*/ OPC_MoveParent, |
| 8922 | /* 16953*/ OPC_Scope, 23, /*->16978*/ // 2 children in Scope |
| 8923 | /* 16955*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 8924 | /* 16957*/ OPC_MoveParent, |
| 8925 | /* 16958*/ OPC_MoveParent, |
| 8926 | /* 16959*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8927 | /* 16961*/ OPC_EmitMergeInputChains1_0, |
| 8928 | /* 16962*/ OPC_EmitInteger, MVT::i32, 0, |
| 8929 | /* 16965*/ OPC_EmitConvertToTarget, 2, |
| 8930 | /* 16967*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8931 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 8932 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 23 |
| 8933 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 8934 | /* 16978*/ /*Scope*/ 23, /*->17002*/ |
| 8935 | /* 16979*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 8936 | /* 16981*/ OPC_MoveParent, |
| 8937 | /* 16982*/ OPC_MoveParent, |
| 8938 | /* 16983*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8939 | /* 16985*/ OPC_EmitMergeInputChains1_0, |
| 8940 | /* 16986*/ OPC_EmitInteger, MVT::i32, 0, |
| 8941 | /* 16989*/ OPC_EmitConvertToTarget, 2, |
| 8942 | /* 16991*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 8943 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 8944 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 23 |
| 8945 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 8946 | /* 17002*/ 0, /*End of Scope*/ |
| 8947 | /* 17003*/ /*SwitchType*/ 63, MVT::i64,// ->17068 |
| 8948 | /* 17005*/ OPC_MoveParent, |
| 8949 | /* 17006*/ OPC_MoveChild2, |
| 8950 | /* 17007*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8951 | /* 17010*/ OPC_RecordChild0, // #3 = $exp |
| 8952 | /* 17011*/ OPC_MoveParent, |
| 8953 | /* 17012*/ OPC_MoveChild3, |
| 8954 | /* 17013*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8955 | /* 17016*/ OPC_RecordChild0, // #4 = $new |
| 8956 | /* 17017*/ OPC_MoveParent, |
| 8957 | /* 17018*/ OPC_Scope, 23, /*->17043*/ // 2 children in Scope |
| 8958 | /* 17020*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 8959 | /* 17022*/ OPC_MoveParent, |
| 8960 | /* 17023*/ OPC_MoveParent, |
| 8961 | /* 17024*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8962 | /* 17026*/ OPC_EmitMergeInputChains1_0, |
| 8963 | /* 17027*/ OPC_EmitInteger, MVT::i32, 0, |
| 8964 | /* 17030*/ OPC_EmitConvertToTarget, 2, |
| 8965 | /* 17032*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8966 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 8967 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 23 |
| 8968 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 8969 | /* 17043*/ /*Scope*/ 23, /*->17067*/ |
| 8970 | /* 17044*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 8971 | /* 17046*/ OPC_MoveParent, |
| 8972 | /* 17047*/ OPC_MoveParent, |
| 8973 | /* 17048*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 8974 | /* 17050*/ OPC_EmitMergeInputChains1_0, |
| 8975 | /* 17051*/ OPC_EmitInteger, MVT::i32, 0, |
| 8976 | /* 17054*/ OPC_EmitConvertToTarget, 2, |
| 8977 | /* 17056*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 8978 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 8979 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 23 |
| 8980 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 8981 | /* 17067*/ 0, /*End of Scope*/ |
| 8982 | /* 17068*/ 0, // EndSwitchType |
| 8983 | /* 17069*/ /*SwitchOpcode*/ 13|128,1/*141*/, TARGET_VAL(ISD::OR),// ->17214 |
| 8984 | /* 17073*/ OPC_RecordChild0, // #1 = $addr |
| 8985 | /* 17074*/ OPC_RecordChild1, // #2 = $off |
| 8986 | /* 17075*/ OPC_MoveChild1, |
| 8987 | /* 17076*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 8988 | /* 17079*/ OPC_MoveParent, |
| 8989 | /* 17080*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 8990 | /* 17082*/ OPC_SwitchType /*2 cases */, 63, MVT::i32,// ->17148 |
| 8991 | /* 17085*/ OPC_MoveParent, |
| 8992 | /* 17086*/ OPC_MoveChild2, |
| 8993 | /* 17087*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8994 | /* 17090*/ OPC_RecordChild0, // #3 = $exp |
| 8995 | /* 17091*/ OPC_MoveParent, |
| 8996 | /* 17092*/ OPC_MoveChild3, |
| 8997 | /* 17093*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 8998 | /* 17096*/ OPC_RecordChild0, // #4 = $new |
| 8999 | /* 17097*/ OPC_MoveParent, |
| 9000 | /* 17098*/ OPC_Scope, 23, /*->17123*/ // 2 children in Scope |
| 9001 | /* 17100*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 9002 | /* 17102*/ OPC_MoveParent, |
| 9003 | /* 17103*/ OPC_MoveParent, |
| 9004 | /* 17104*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9005 | /* 17106*/ OPC_EmitMergeInputChains1_0, |
| 9006 | /* 17107*/ OPC_EmitInteger, MVT::i32, 0, |
| 9007 | /* 17110*/ OPC_EmitConvertToTarget, 2, |
| 9008 | /* 17112*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9009 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 9010 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 23 |
| 9011 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9012 | /* 17123*/ /*Scope*/ 23, /*->17147*/ |
| 9013 | /* 17124*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 9014 | /* 17126*/ OPC_MoveParent, |
| 9015 | /* 17127*/ OPC_MoveParent, |
| 9016 | /* 17128*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9017 | /* 17130*/ OPC_EmitMergeInputChains1_0, |
| 9018 | /* 17131*/ OPC_EmitInteger, MVT::i32, 0, |
| 9019 | /* 17134*/ OPC_EmitConvertToTarget, 2, |
| 9020 | /* 17136*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9021 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 9022 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 23 |
| 9023 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9024 | /* 17147*/ 0, /*End of Scope*/ |
| 9025 | /* 17148*/ /*SwitchType*/ 63, MVT::i64,// ->17213 |
| 9026 | /* 17150*/ OPC_MoveParent, |
| 9027 | /* 17151*/ OPC_MoveChild2, |
| 9028 | /* 17152*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9029 | /* 17155*/ OPC_RecordChild0, // #3 = $exp |
| 9030 | /* 17156*/ OPC_MoveParent, |
| 9031 | /* 17157*/ OPC_MoveChild3, |
| 9032 | /* 17158*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9033 | /* 17161*/ OPC_RecordChild0, // #4 = $new |
| 9034 | /* 17162*/ OPC_MoveParent, |
| 9035 | /* 17163*/ OPC_Scope, 23, /*->17188*/ // 2 children in Scope |
| 9036 | /* 17165*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 9037 | /* 17167*/ OPC_MoveParent, |
| 9038 | /* 17168*/ OPC_MoveParent, |
| 9039 | /* 17169*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9040 | /* 17171*/ OPC_EmitMergeInputChains1_0, |
| 9041 | /* 17172*/ OPC_EmitInteger, MVT::i32, 0, |
| 9042 | /* 17175*/ OPC_EmitConvertToTarget, 2, |
| 9043 | /* 17177*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9044 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 9045 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 23 |
| 9046 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9047 | /* 17188*/ /*Scope*/ 23, /*->17212*/ |
| 9048 | /* 17189*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 9049 | /* 17191*/ OPC_MoveParent, |
| 9050 | /* 17192*/ OPC_MoveParent, |
| 9051 | /* 17193*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9052 | /* 17195*/ OPC_EmitMergeInputChains1_0, |
| 9053 | /* 17196*/ OPC_EmitInteger, MVT::i32, 0, |
| 9054 | /* 17199*/ OPC_EmitConvertToTarget, 2, |
| 9055 | /* 17201*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9056 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 9057 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 23 |
| 9058 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9059 | /* 17212*/ 0, /*End of Scope*/ |
| 9060 | /* 17213*/ 0, // EndSwitchType |
| 9061 | /* 17214*/ /*SwitchOpcode*/ 19|128,1/*147*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->17365 |
| 9062 | /* 17218*/ OPC_RecordChild0, // #1 = $off |
| 9063 | /* 17219*/ OPC_MoveChild0, |
| 9064 | /* 17220*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 9065 | /* 17223*/ OPC_MoveParent, |
| 9066 | /* 17224*/ OPC_MoveParent, |
| 9067 | /* 17225*/ OPC_MoveChild2, |
| 9068 | /* 17226*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9069 | /* 17229*/ OPC_RecordChild0, // #2 = $exp |
| 9070 | /* 17230*/ OPC_MoveParent, |
| 9071 | /* 17231*/ OPC_MoveChild3, |
| 9072 | /* 17232*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9073 | /* 17235*/ OPC_RecordChild0, // #3 = $new |
| 9074 | /* 17236*/ OPC_MoveParent, |
| 9075 | /* 17237*/ OPC_Scope, 62, /*->17301*/ // 2 children in Scope |
| 9076 | /* 17239*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 9077 | /* 17241*/ OPC_MoveParent, |
| 9078 | /* 17242*/ OPC_MoveParent, |
| 9079 | /* 17243*/ OPC_Scope, 27, /*->17272*/ // 2 children in Scope |
| 9080 | /* 17245*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 9081 | /* 17247*/ OPC_EmitMergeInputChains1_0, |
| 9082 | /* 17248*/ OPC_EmitInteger, MVT::i32, 0, |
| 9083 | /* 17251*/ OPC_EmitInteger, MVT::i32, 0, |
| 9084 | /* 17254*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 9085 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 9086 | /* 17261*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9087 | MVT::i64, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 9088 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 22 |
| 9089 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9090 | /* 17272*/ /*Scope*/ 27, /*->17300*/ |
| 9091 | /* 17273*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 9092 | /* 17275*/ OPC_EmitMergeInputChains1_0, |
| 9093 | /* 17276*/ OPC_EmitInteger, MVT::i32, 0, |
| 9094 | /* 17279*/ OPC_EmitInteger, MVT::i64, 0, |
| 9095 | /* 17282*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 9096 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 9097 | /* 17289*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9098 | MVT::i64, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 9099 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 22 |
| 9100 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9101 | /* 17300*/ 0, /*End of Scope*/ |
| 9102 | /* 17301*/ /*Scope*/ 62, /*->17364*/ |
| 9103 | /* 17302*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 9104 | /* 17304*/ OPC_MoveParent, |
| 9105 | /* 17305*/ OPC_MoveParent, |
| 9106 | /* 17306*/ OPC_Scope, 27, /*->17335*/ // 2 children in Scope |
| 9107 | /* 17308*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 9108 | /* 17310*/ OPC_EmitMergeInputChains1_0, |
| 9109 | /* 17311*/ OPC_EmitInteger, MVT::i32, 0, |
| 9110 | /* 17314*/ OPC_EmitInteger, MVT::i32, 0, |
| 9111 | /* 17317*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 9112 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 9113 | /* 17324*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9114 | MVT::i64, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 9115 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 22 |
| 9116 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9117 | /* 17335*/ /*Scope*/ 27, /*->17363*/ |
| 9118 | /* 17336*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 9119 | /* 17338*/ OPC_EmitMergeInputChains1_0, |
| 9120 | /* 17339*/ OPC_EmitInteger, MVT::i32, 0, |
| 9121 | /* 17342*/ OPC_EmitInteger, MVT::i64, 0, |
| 9122 | /* 17345*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 9123 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 9124 | /* 17352*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9125 | MVT::i64, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 9126 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 22 |
| 9127 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9128 | /* 17363*/ 0, /*End of Scope*/ |
| 9129 | /* 17364*/ 0, /*End of Scope*/ |
| 9130 | /* 17365*/ 0, // EndSwitchOpcode |
| 9131 | /* 17366*/ /*Scope*/ 16|128,2/*272*/, /*->17640*/ |
| 9132 | /* 17368*/ OPC_RecordChild1, // #1 = $off |
| 9133 | /* 17369*/ OPC_Scope, 5|128,1/*133*/, /*->17505*/ // 3 children in Scope |
| 9134 | /* 17372*/ OPC_MoveChild1, |
| 9135 | /* 17373*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 9136 | /* 17376*/ OPC_MoveParent, |
| 9137 | /* 17377*/ OPC_MoveChild2, |
| 9138 | /* 17378*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9139 | /* 17381*/ OPC_RecordChild0, // #2 = $exp |
| 9140 | /* 17382*/ OPC_MoveParent, |
| 9141 | /* 17383*/ OPC_MoveChild3, |
| 9142 | /* 17384*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9143 | /* 17387*/ OPC_RecordChild0, // #3 = $new |
| 9144 | /* 17388*/ OPC_MoveParent, |
| 9145 | /* 17389*/ OPC_Scope, 56, /*->17447*/ // 2 children in Scope |
| 9146 | /* 17391*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 9147 | /* 17393*/ OPC_MoveParent, |
| 9148 | /* 17394*/ OPC_MoveParent, |
| 9149 | /* 17395*/ OPC_EmitMergeInputChains1_0, |
| 9150 | /* 17396*/ OPC_EmitInteger, MVT::i32, 0, |
| 9151 | /* 17399*/ OPC_EmitConvertToTarget, 1, |
| 9152 | /* 17401*/ OPC_Scope, 21, /*->17424*/ // 2 children in Scope |
| 9153 | /* 17403*/ OPC_EmitInteger, MVT::i32, 0, |
| 9154 | /* 17406*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 9155 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 9156 | /* 17413*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9157 | MVT::i64, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 9158 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 19 |
| 9159 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9160 | /* 17424*/ /*Scope*/ 21, /*->17446*/ |
| 9161 | /* 17425*/ OPC_EmitInteger, MVT::i64, 0, |
| 9162 | /* 17428*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 9163 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 9164 | /* 17435*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9165 | MVT::i64, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 9166 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 19 |
| 9167 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9168 | /* 17446*/ 0, /*End of Scope*/ |
| 9169 | /* 17447*/ /*Scope*/ 56, /*->17504*/ |
| 9170 | /* 17448*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 9171 | /* 17450*/ OPC_MoveParent, |
| 9172 | /* 17451*/ OPC_MoveParent, |
| 9173 | /* 17452*/ OPC_EmitMergeInputChains1_0, |
| 9174 | /* 17453*/ OPC_EmitInteger, MVT::i32, 0, |
| 9175 | /* 17456*/ OPC_EmitConvertToTarget, 1, |
| 9176 | /* 17458*/ OPC_Scope, 21, /*->17481*/ // 2 children in Scope |
| 9177 | /* 17460*/ OPC_EmitInteger, MVT::i32, 0, |
| 9178 | /* 17463*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 9179 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 9180 | /* 17470*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9181 | MVT::i64, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 9182 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 19 |
| 9183 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9184 | /* 17481*/ /*Scope*/ 21, /*->17503*/ |
| 9185 | /* 17482*/ OPC_EmitInteger, MVT::i64, 0, |
| 9186 | /* 17485*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 9187 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 9188 | /* 17492*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9189 | MVT::i64, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 9190 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 19 |
| 9191 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9192 | /* 17503*/ 0, /*End of Scope*/ |
| 9193 | /* 17504*/ 0, /*End of Scope*/ |
| 9194 | /* 17505*/ /*Scope*/ 66, /*->17572*/ |
| 9195 | /* 17506*/ OPC_CheckChild1Type, MVT::i32, |
| 9196 | /* 17508*/ OPC_MoveChild2, |
| 9197 | /* 17509*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9198 | /* 17512*/ OPC_RecordChild0, // #2 = $exp |
| 9199 | /* 17513*/ OPC_MoveParent, |
| 9200 | /* 17514*/ OPC_MoveChild3, |
| 9201 | /* 17515*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9202 | /* 17518*/ OPC_RecordChild0, // #3 = $new |
| 9203 | /* 17519*/ OPC_MoveParent, |
| 9204 | /* 17520*/ OPC_Scope, 24, /*->17546*/ // 2 children in Scope |
| 9205 | /* 17522*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 9206 | /* 17524*/ OPC_MoveParent, |
| 9207 | /* 17525*/ OPC_MoveParent, |
| 9208 | /* 17526*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9209 | /* 17528*/ OPC_EmitMergeInputChains1_0, |
| 9210 | /* 17529*/ OPC_EmitInteger, MVT::i32, 0, |
| 9211 | /* 17532*/ OPC_EmitInteger, MVT::i32, 0, |
| 9212 | /* 17535*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9213 | MVT::i64, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 9214 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 16 |
| 9215 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9216 | /* 17546*/ /*Scope*/ 24, /*->17571*/ |
| 9217 | /* 17547*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 9218 | /* 17549*/ OPC_MoveParent, |
| 9219 | /* 17550*/ OPC_MoveParent, |
| 9220 | /* 17551*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9221 | /* 17553*/ OPC_EmitMergeInputChains1_0, |
| 9222 | /* 17554*/ OPC_EmitInteger, MVT::i32, 0, |
| 9223 | /* 17557*/ OPC_EmitInteger, MVT::i32, 0, |
| 9224 | /* 17560*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9225 | MVT::i64, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 9226 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 16 |
| 9227 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9228 | /* 17571*/ 0, /*End of Scope*/ |
| 9229 | /* 17572*/ /*Scope*/ 66, /*->17639*/ |
| 9230 | /* 17573*/ OPC_CheckChild1Type, MVT::i64, |
| 9231 | /* 17575*/ OPC_MoveChild2, |
| 9232 | /* 17576*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9233 | /* 17579*/ OPC_RecordChild0, // #2 = $exp |
| 9234 | /* 17580*/ OPC_MoveParent, |
| 9235 | /* 17581*/ OPC_MoveChild3, |
| 9236 | /* 17582*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9237 | /* 17585*/ OPC_RecordChild0, // #3 = $new |
| 9238 | /* 17586*/ OPC_MoveParent, |
| 9239 | /* 17587*/ OPC_Scope, 24, /*->17613*/ // 2 children in Scope |
| 9240 | /* 17589*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 9241 | /* 17591*/ OPC_MoveParent, |
| 9242 | /* 17592*/ OPC_MoveParent, |
| 9243 | /* 17593*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9244 | /* 17595*/ OPC_EmitMergeInputChains1_0, |
| 9245 | /* 17596*/ OPC_EmitInteger, MVT::i32, 0, |
| 9246 | /* 17599*/ OPC_EmitInteger, MVT::i64, 0, |
| 9247 | /* 17602*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9248 | MVT::i64, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 9249 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_8>>)) - Complexity = 16 |
| 9250 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9251 | /* 17613*/ /*Scope*/ 24, /*->17638*/ |
| 9252 | /* 17614*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 9253 | /* 17616*/ OPC_MoveParent, |
| 9254 | /* 17617*/ OPC_MoveParent, |
| 9255 | /* 17618*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9256 | /* 17620*/ OPC_EmitMergeInputChains1_0, |
| 9257 | /* 17621*/ OPC_EmitInteger, MVT::i32, 0, |
| 9258 | /* 17624*/ OPC_EmitInteger, MVT::i64, 0, |
| 9259 | /* 17627*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9260 | MVT::i64, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 9261 | // Src: (anyext:{ *:[i64] } (assertzext:{ *:[i32] } (atomic_cmp_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$exp), (trunc:{ *:[i32] } i64:{ *:[i64] }:$new))<<P:Predicate_atomic_cmp_swap_16>>)) - Complexity = 16 |
| 9262 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 9263 | /* 17638*/ 0, /*End of Scope*/ |
| 9264 | /* 17639*/ 0, /*End of Scope*/ |
| 9265 | /* 17640*/ 0, /*End of Scope*/ |
| 9266 | /* 17641*/ /*SwitchOpcode*/ 18|128,5/*658*/, TARGET_VAL(ISD::ATOMIC_LOAD_ADD),// ->18303 |
| 9267 | /* 17645*/ OPC_RecordMemRef, |
| 9268 | /* 17646*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 9269 | /* 17647*/ OPC_Scope, 6|128,3/*390*/, /*->18040*/ // 2 children in Scope |
| 9270 | /* 17650*/ OPC_MoveChild1, |
| 9271 | /* 17651*/ OPC_SwitchOpcode /*3 cases */, 121, TARGET_VAL(ISD::ADD),// ->17776 |
| 9272 | /* 17655*/ OPC_RecordChild0, // #1 = $addr |
| 9273 | /* 17656*/ OPC_RecordChild1, // #2 = $off |
| 9274 | /* 17657*/ OPC_MoveChild1, |
| 9275 | /* 17658*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 9276 | /* 17661*/ OPC_MoveParent, |
| 9277 | /* 17662*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 9278 | /* 17664*/ OPC_SwitchType /*2 cases */, 53, MVT::i32,// ->17720 |
| 9279 | /* 17667*/ OPC_MoveParent, |
| 9280 | /* 17668*/ OPC_MoveChild2, |
| 9281 | /* 17669*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9282 | /* 17672*/ OPC_RecordChild0, // #3 = $val |
| 9283 | /* 17673*/ OPC_MoveParent, |
| 9284 | /* 17674*/ OPC_Scope, 21, /*->17697*/ // 2 children in Scope |
| 9285 | /* 17676*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 9286 | /* 17678*/ OPC_MoveParent, |
| 9287 | /* 17679*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9288 | /* 17681*/ OPC_EmitMergeInputChains1_0, |
| 9289 | /* 17682*/ OPC_EmitInteger, MVT::i32, 0, |
| 9290 | /* 17685*/ OPC_EmitConvertToTarget, 2, |
| 9291 | /* 17687*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9292 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9293 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>) - Complexity = 17 |
| 9294 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9295 | /* 17697*/ /*Scope*/ 21, /*->17719*/ |
| 9296 | /* 17698*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 9297 | /* 17700*/ OPC_MoveParent, |
| 9298 | /* 17701*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9299 | /* 17703*/ OPC_EmitMergeInputChains1_0, |
| 9300 | /* 17704*/ OPC_EmitInteger, MVT::i32, 0, |
| 9301 | /* 17707*/ OPC_EmitConvertToTarget, 2, |
| 9302 | /* 17709*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9303 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9304 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>) - Complexity = 17 |
| 9305 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9306 | /* 17719*/ 0, /*End of Scope*/ |
| 9307 | /* 17720*/ /*SwitchType*/ 53, MVT::i64,// ->17775 |
| 9308 | /* 17722*/ OPC_MoveParent, |
| 9309 | /* 17723*/ OPC_MoveChild2, |
| 9310 | /* 17724*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9311 | /* 17727*/ OPC_RecordChild0, // #3 = $val |
| 9312 | /* 17728*/ OPC_MoveParent, |
| 9313 | /* 17729*/ OPC_Scope, 21, /*->17752*/ // 2 children in Scope |
| 9314 | /* 17731*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 9315 | /* 17733*/ OPC_MoveParent, |
| 9316 | /* 17734*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9317 | /* 17736*/ OPC_EmitMergeInputChains1_0, |
| 9318 | /* 17737*/ OPC_EmitInteger, MVT::i32, 0, |
| 9319 | /* 17740*/ OPC_EmitConvertToTarget, 2, |
| 9320 | /* 17742*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9321 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9322 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>) - Complexity = 17 |
| 9323 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9324 | /* 17752*/ /*Scope*/ 21, /*->17774*/ |
| 9325 | /* 17753*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 9326 | /* 17755*/ OPC_MoveParent, |
| 9327 | /* 17756*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9328 | /* 17758*/ OPC_EmitMergeInputChains1_0, |
| 9329 | /* 17759*/ OPC_EmitInteger, MVT::i32, 0, |
| 9330 | /* 17762*/ OPC_EmitConvertToTarget, 2, |
| 9331 | /* 17764*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9332 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9333 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>) - Complexity = 17 |
| 9334 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9335 | /* 17774*/ 0, /*End of Scope*/ |
| 9336 | /* 17775*/ 0, // EndSwitchType |
| 9337 | /* 17776*/ /*SwitchOpcode*/ 121, TARGET_VAL(ISD::OR),// ->17900 |
| 9338 | /* 17779*/ OPC_RecordChild0, // #1 = $addr |
| 9339 | /* 17780*/ OPC_RecordChild1, // #2 = $off |
| 9340 | /* 17781*/ OPC_MoveChild1, |
| 9341 | /* 17782*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 9342 | /* 17785*/ OPC_MoveParent, |
| 9343 | /* 17786*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 9344 | /* 17788*/ OPC_SwitchType /*2 cases */, 53, MVT::i32,// ->17844 |
| 9345 | /* 17791*/ OPC_MoveParent, |
| 9346 | /* 17792*/ OPC_MoveChild2, |
| 9347 | /* 17793*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9348 | /* 17796*/ OPC_RecordChild0, // #3 = $val |
| 9349 | /* 17797*/ OPC_MoveParent, |
| 9350 | /* 17798*/ OPC_Scope, 21, /*->17821*/ // 2 children in Scope |
| 9351 | /* 17800*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 9352 | /* 17802*/ OPC_MoveParent, |
| 9353 | /* 17803*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9354 | /* 17805*/ OPC_EmitMergeInputChains1_0, |
| 9355 | /* 17806*/ OPC_EmitInteger, MVT::i32, 0, |
| 9356 | /* 17809*/ OPC_EmitConvertToTarget, 2, |
| 9357 | /* 17811*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9358 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9359 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>) - Complexity = 17 |
| 9360 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9361 | /* 17821*/ /*Scope*/ 21, /*->17843*/ |
| 9362 | /* 17822*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 9363 | /* 17824*/ OPC_MoveParent, |
| 9364 | /* 17825*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9365 | /* 17827*/ OPC_EmitMergeInputChains1_0, |
| 9366 | /* 17828*/ OPC_EmitInteger, MVT::i32, 0, |
| 9367 | /* 17831*/ OPC_EmitConvertToTarget, 2, |
| 9368 | /* 17833*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9369 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9370 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>) - Complexity = 17 |
| 9371 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9372 | /* 17843*/ 0, /*End of Scope*/ |
| 9373 | /* 17844*/ /*SwitchType*/ 53, MVT::i64,// ->17899 |
| 9374 | /* 17846*/ OPC_MoveParent, |
| 9375 | /* 17847*/ OPC_MoveChild2, |
| 9376 | /* 17848*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9377 | /* 17851*/ OPC_RecordChild0, // #3 = $val |
| 9378 | /* 17852*/ OPC_MoveParent, |
| 9379 | /* 17853*/ OPC_Scope, 21, /*->17876*/ // 2 children in Scope |
| 9380 | /* 17855*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 9381 | /* 17857*/ OPC_MoveParent, |
| 9382 | /* 17858*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9383 | /* 17860*/ OPC_EmitMergeInputChains1_0, |
| 9384 | /* 17861*/ OPC_EmitInteger, MVT::i32, 0, |
| 9385 | /* 17864*/ OPC_EmitConvertToTarget, 2, |
| 9386 | /* 17866*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9387 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9388 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>) - Complexity = 17 |
| 9389 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9390 | /* 17876*/ /*Scope*/ 21, /*->17898*/ |
| 9391 | /* 17877*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 9392 | /* 17879*/ OPC_MoveParent, |
| 9393 | /* 17880*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9394 | /* 17882*/ OPC_EmitMergeInputChains1_0, |
| 9395 | /* 17883*/ OPC_EmitInteger, MVT::i32, 0, |
| 9396 | /* 17886*/ OPC_EmitConvertToTarget, 2, |
| 9397 | /* 17888*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9398 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9399 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>) - Complexity = 17 |
| 9400 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9401 | /* 17898*/ 0, /*End of Scope*/ |
| 9402 | /* 17899*/ 0, // EndSwitchType |
| 9403 | /* 17900*/ /*SwitchOpcode*/ 7|128,1/*135*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->18039 |
| 9404 | /* 17904*/ OPC_RecordChild0, // #1 = $off |
| 9405 | /* 17905*/ OPC_MoveChild0, |
| 9406 | /* 17906*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 9407 | /* 17909*/ OPC_MoveParent, |
| 9408 | /* 17910*/ OPC_MoveParent, |
| 9409 | /* 17911*/ OPC_MoveChild2, |
| 9410 | /* 17912*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9411 | /* 17915*/ OPC_RecordChild0, // #2 = $val |
| 9412 | /* 17916*/ OPC_MoveParent, |
| 9413 | /* 17917*/ OPC_Scope, 59, /*->17978*/ // 2 children in Scope |
| 9414 | /* 17919*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 9415 | /* 17921*/ OPC_MoveParent, |
| 9416 | /* 17922*/ OPC_Scope, 26, /*->17950*/ // 2 children in Scope |
| 9417 | /* 17924*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 9418 | /* 17926*/ OPC_EmitMergeInputChains1_0, |
| 9419 | /* 17927*/ OPC_EmitInteger, MVT::i32, 0, |
| 9420 | /* 17930*/ OPC_EmitInteger, MVT::i32, 0, |
| 9421 | /* 17933*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 9422 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 9423 | /* 17940*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9424 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 9425 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>) - Complexity = 16 |
| 9426 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 9427 | /* 17950*/ /*Scope*/ 26, /*->17977*/ |
| 9428 | /* 17951*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 9429 | /* 17953*/ OPC_EmitMergeInputChains1_0, |
| 9430 | /* 17954*/ OPC_EmitInteger, MVT::i32, 0, |
| 9431 | /* 17957*/ OPC_EmitInteger, MVT::i64, 0, |
| 9432 | /* 17960*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 9433 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 9434 | /* 17967*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9435 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 9436 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>) - Complexity = 16 |
| 9437 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 9438 | /* 17977*/ 0, /*End of Scope*/ |
| 9439 | /* 17978*/ /*Scope*/ 59, /*->18038*/ |
| 9440 | /* 17979*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 9441 | /* 17981*/ OPC_MoveParent, |
| 9442 | /* 17982*/ OPC_Scope, 26, /*->18010*/ // 2 children in Scope |
| 9443 | /* 17984*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 9444 | /* 17986*/ OPC_EmitMergeInputChains1_0, |
| 9445 | /* 17987*/ OPC_EmitInteger, MVT::i32, 0, |
| 9446 | /* 17990*/ OPC_EmitInteger, MVT::i32, 0, |
| 9447 | /* 17993*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 9448 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 9449 | /* 18000*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9450 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 9451 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>) - Complexity = 16 |
| 9452 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 9453 | /* 18010*/ /*Scope*/ 26, /*->18037*/ |
| 9454 | /* 18011*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 9455 | /* 18013*/ OPC_EmitMergeInputChains1_0, |
| 9456 | /* 18014*/ OPC_EmitInteger, MVT::i32, 0, |
| 9457 | /* 18017*/ OPC_EmitInteger, MVT::i64, 0, |
| 9458 | /* 18020*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 9459 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 9460 | /* 18027*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9461 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 9462 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>) - Complexity = 16 |
| 9463 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 9464 | /* 18037*/ 0, /*End of Scope*/ |
| 9465 | /* 18038*/ 0, /*End of Scope*/ |
| 9466 | /* 18039*/ 0, // EndSwitchOpcode |
| 9467 | /* 18040*/ /*Scope*/ 4|128,2/*260*/, /*->18302*/ |
| 9468 | /* 18042*/ OPC_RecordChild1, // #1 = $off |
| 9469 | /* 18043*/ OPC_Scope, 13|128,1/*141*/, /*->18187*/ // 3 children in Scope |
| 9470 | /* 18046*/ OPC_MoveChild1, |
| 9471 | /* 18047*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 9472 | /* 18050*/ OPC_MoveParent, |
| 9473 | /* 18051*/ OPC_MoveChild2, |
| 9474 | /* 18052*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9475 | /* 18055*/ OPC_RecordChild0, // #2 = $val |
| 9476 | /* 18056*/ OPC_MoveParent, |
| 9477 | /* 18057*/ OPC_Scope, 63, /*->18122*/ // 2 children in Scope |
| 9478 | /* 18059*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 9479 | /* 18061*/ OPC_MoveParent, |
| 9480 | /* 18062*/ OPC_Scope, 28, /*->18092*/ // 2 children in Scope |
| 9481 | /* 18064*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9482 | /* 18066*/ OPC_EmitMergeInputChains1_0, |
| 9483 | /* 18067*/ OPC_EmitInteger, MVT::i32, 0, |
| 9484 | /* 18070*/ OPC_EmitConvertToTarget, 1, |
| 9485 | /* 18072*/ OPC_EmitInteger, MVT::i32, 0, |
| 9486 | /* 18075*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 9487 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 9488 | /* 18082*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9489 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 9490 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>) - Complexity = 13 |
| 9491 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 9492 | /* 18092*/ /*Scope*/ 28, /*->18121*/ |
| 9493 | /* 18093*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9494 | /* 18095*/ OPC_EmitMergeInputChains1_0, |
| 9495 | /* 18096*/ OPC_EmitInteger, MVT::i32, 0, |
| 9496 | /* 18099*/ OPC_EmitConvertToTarget, 1, |
| 9497 | /* 18101*/ OPC_EmitInteger, MVT::i64, 0, |
| 9498 | /* 18104*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 9499 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 9500 | /* 18111*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9501 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 9502 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>) - Complexity = 13 |
| 9503 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 9504 | /* 18121*/ 0, /*End of Scope*/ |
| 9505 | /* 18122*/ /*Scope*/ 63, /*->18186*/ |
| 9506 | /* 18123*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 9507 | /* 18125*/ OPC_MoveParent, |
| 9508 | /* 18126*/ OPC_Scope, 28, /*->18156*/ // 2 children in Scope |
| 9509 | /* 18128*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9510 | /* 18130*/ OPC_EmitMergeInputChains1_0, |
| 9511 | /* 18131*/ OPC_EmitInteger, MVT::i32, 0, |
| 9512 | /* 18134*/ OPC_EmitConvertToTarget, 1, |
| 9513 | /* 18136*/ OPC_EmitInteger, MVT::i32, 0, |
| 9514 | /* 18139*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 9515 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 9516 | /* 18146*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9517 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 9518 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>) - Complexity = 13 |
| 9519 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 9520 | /* 18156*/ /*Scope*/ 28, /*->18185*/ |
| 9521 | /* 18157*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9522 | /* 18159*/ OPC_EmitMergeInputChains1_0, |
| 9523 | /* 18160*/ OPC_EmitInteger, MVT::i32, 0, |
| 9524 | /* 18163*/ OPC_EmitConvertToTarget, 1, |
| 9525 | /* 18165*/ OPC_EmitInteger, MVT::i64, 0, |
| 9526 | /* 18168*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 9527 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 9528 | /* 18175*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9529 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 9530 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>) - Complexity = 13 |
| 9531 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 9532 | /* 18185*/ 0, /*End of Scope*/ |
| 9533 | /* 18186*/ 0, /*End of Scope*/ |
| 9534 | /* 18187*/ /*Scope*/ 56, /*->18244*/ |
| 9535 | /* 18188*/ OPC_CheckChild1Type, MVT::i32, |
| 9536 | /* 18190*/ OPC_MoveChild2, |
| 9537 | /* 18191*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9538 | /* 18194*/ OPC_RecordChild0, // #2 = $val |
| 9539 | /* 18195*/ OPC_MoveParent, |
| 9540 | /* 18196*/ OPC_Scope, 22, /*->18220*/ // 2 children in Scope |
| 9541 | /* 18198*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 9542 | /* 18200*/ OPC_MoveParent, |
| 9543 | /* 18201*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9544 | /* 18203*/ OPC_EmitMergeInputChains1_0, |
| 9545 | /* 18204*/ OPC_EmitInteger, MVT::i32, 0, |
| 9546 | /* 18207*/ OPC_EmitInteger, MVT::i32, 0, |
| 9547 | /* 18210*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9548 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 9549 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>) - Complexity = 10 |
| 9550 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9551 | /* 18220*/ /*Scope*/ 22, /*->18243*/ |
| 9552 | /* 18221*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 9553 | /* 18223*/ OPC_MoveParent, |
| 9554 | /* 18224*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9555 | /* 18226*/ OPC_EmitMergeInputChains1_0, |
| 9556 | /* 18227*/ OPC_EmitInteger, MVT::i32, 0, |
| 9557 | /* 18230*/ OPC_EmitInteger, MVT::i32, 0, |
| 9558 | /* 18233*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9559 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 9560 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>) - Complexity = 10 |
| 9561 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9562 | /* 18243*/ 0, /*End of Scope*/ |
| 9563 | /* 18244*/ /*Scope*/ 56, /*->18301*/ |
| 9564 | /* 18245*/ OPC_CheckChild1Type, MVT::i64, |
| 9565 | /* 18247*/ OPC_MoveChild2, |
| 9566 | /* 18248*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9567 | /* 18251*/ OPC_RecordChild0, // #2 = $val |
| 9568 | /* 18252*/ OPC_MoveParent, |
| 9569 | /* 18253*/ OPC_Scope, 22, /*->18277*/ // 2 children in Scope |
| 9570 | /* 18255*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 9571 | /* 18257*/ OPC_MoveParent, |
| 9572 | /* 18258*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9573 | /* 18260*/ OPC_EmitMergeInputChains1_0, |
| 9574 | /* 18261*/ OPC_EmitInteger, MVT::i32, 0, |
| 9575 | /* 18264*/ OPC_EmitInteger, MVT::i64, 0, |
| 9576 | /* 18267*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9577 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 9578 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_8>>) - Complexity = 10 |
| 9579 | // Dst: (ATOMIC_RMW8_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9580 | /* 18277*/ /*Scope*/ 22, /*->18300*/ |
| 9581 | /* 18278*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 9582 | /* 18280*/ OPC_MoveParent, |
| 9583 | /* 18281*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9584 | /* 18283*/ OPC_EmitMergeInputChains1_0, |
| 9585 | /* 18284*/ OPC_EmitInteger, MVT::i32, 0, |
| 9586 | /* 18287*/ OPC_EmitInteger, MVT::i64, 0, |
| 9587 | /* 18290*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9588 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 9589 | // Src: (anyext:{ *:[i64] } (atomic_load_add:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_add_16>>) - Complexity = 10 |
| 9590 | // Dst: (ATOMIC_RMW16_U_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9591 | /* 18300*/ 0, /*End of Scope*/ |
| 9592 | /* 18301*/ 0, /*End of Scope*/ |
| 9593 | /* 18302*/ 0, /*End of Scope*/ |
| 9594 | /* 18303*/ /*SwitchOpcode*/ 18|128,5/*658*/, TARGET_VAL(ISD::ATOMIC_LOAD_SUB),// ->18965 |
| 9595 | /* 18307*/ OPC_RecordMemRef, |
| 9596 | /* 18308*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 9597 | /* 18309*/ OPC_Scope, 6|128,3/*390*/, /*->18702*/ // 2 children in Scope |
| 9598 | /* 18312*/ OPC_MoveChild1, |
| 9599 | /* 18313*/ OPC_SwitchOpcode /*3 cases */, 121, TARGET_VAL(ISD::ADD),// ->18438 |
| 9600 | /* 18317*/ OPC_RecordChild0, // #1 = $addr |
| 9601 | /* 18318*/ OPC_RecordChild1, // #2 = $off |
| 9602 | /* 18319*/ OPC_MoveChild1, |
| 9603 | /* 18320*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 9604 | /* 18323*/ OPC_MoveParent, |
| 9605 | /* 18324*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 9606 | /* 18326*/ OPC_SwitchType /*2 cases */, 53, MVT::i32,// ->18382 |
| 9607 | /* 18329*/ OPC_MoveParent, |
| 9608 | /* 18330*/ OPC_MoveChild2, |
| 9609 | /* 18331*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9610 | /* 18334*/ OPC_RecordChild0, // #3 = $val |
| 9611 | /* 18335*/ OPC_MoveParent, |
| 9612 | /* 18336*/ OPC_Scope, 21, /*->18359*/ // 2 children in Scope |
| 9613 | /* 18338*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 9614 | /* 18340*/ OPC_MoveParent, |
| 9615 | /* 18341*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9616 | /* 18343*/ OPC_EmitMergeInputChains1_0, |
| 9617 | /* 18344*/ OPC_EmitInteger, MVT::i32, 0, |
| 9618 | /* 18347*/ OPC_EmitConvertToTarget, 2, |
| 9619 | /* 18349*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9620 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9621 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>) - Complexity = 17 |
| 9622 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9623 | /* 18359*/ /*Scope*/ 21, /*->18381*/ |
| 9624 | /* 18360*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 9625 | /* 18362*/ OPC_MoveParent, |
| 9626 | /* 18363*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9627 | /* 18365*/ OPC_EmitMergeInputChains1_0, |
| 9628 | /* 18366*/ OPC_EmitInteger, MVT::i32, 0, |
| 9629 | /* 18369*/ OPC_EmitConvertToTarget, 2, |
| 9630 | /* 18371*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9631 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9632 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>) - Complexity = 17 |
| 9633 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9634 | /* 18381*/ 0, /*End of Scope*/ |
| 9635 | /* 18382*/ /*SwitchType*/ 53, MVT::i64,// ->18437 |
| 9636 | /* 18384*/ OPC_MoveParent, |
| 9637 | /* 18385*/ OPC_MoveChild2, |
| 9638 | /* 18386*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9639 | /* 18389*/ OPC_RecordChild0, // #3 = $val |
| 9640 | /* 18390*/ OPC_MoveParent, |
| 9641 | /* 18391*/ OPC_Scope, 21, /*->18414*/ // 2 children in Scope |
| 9642 | /* 18393*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 9643 | /* 18395*/ OPC_MoveParent, |
| 9644 | /* 18396*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9645 | /* 18398*/ OPC_EmitMergeInputChains1_0, |
| 9646 | /* 18399*/ OPC_EmitInteger, MVT::i32, 0, |
| 9647 | /* 18402*/ OPC_EmitConvertToTarget, 2, |
| 9648 | /* 18404*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9649 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9650 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>) - Complexity = 17 |
| 9651 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9652 | /* 18414*/ /*Scope*/ 21, /*->18436*/ |
| 9653 | /* 18415*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 9654 | /* 18417*/ OPC_MoveParent, |
| 9655 | /* 18418*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9656 | /* 18420*/ OPC_EmitMergeInputChains1_0, |
| 9657 | /* 18421*/ OPC_EmitInteger, MVT::i32, 0, |
| 9658 | /* 18424*/ OPC_EmitConvertToTarget, 2, |
| 9659 | /* 18426*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9660 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9661 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>) - Complexity = 17 |
| 9662 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9663 | /* 18436*/ 0, /*End of Scope*/ |
| 9664 | /* 18437*/ 0, // EndSwitchType |
| 9665 | /* 18438*/ /*SwitchOpcode*/ 121, TARGET_VAL(ISD::OR),// ->18562 |
| 9666 | /* 18441*/ OPC_RecordChild0, // #1 = $addr |
| 9667 | /* 18442*/ OPC_RecordChild1, // #2 = $off |
| 9668 | /* 18443*/ OPC_MoveChild1, |
| 9669 | /* 18444*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 9670 | /* 18447*/ OPC_MoveParent, |
| 9671 | /* 18448*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 9672 | /* 18450*/ OPC_SwitchType /*2 cases */, 53, MVT::i32,// ->18506 |
| 9673 | /* 18453*/ OPC_MoveParent, |
| 9674 | /* 18454*/ OPC_MoveChild2, |
| 9675 | /* 18455*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9676 | /* 18458*/ OPC_RecordChild0, // #3 = $val |
| 9677 | /* 18459*/ OPC_MoveParent, |
| 9678 | /* 18460*/ OPC_Scope, 21, /*->18483*/ // 2 children in Scope |
| 9679 | /* 18462*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 9680 | /* 18464*/ OPC_MoveParent, |
| 9681 | /* 18465*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9682 | /* 18467*/ OPC_EmitMergeInputChains1_0, |
| 9683 | /* 18468*/ OPC_EmitInteger, MVT::i32, 0, |
| 9684 | /* 18471*/ OPC_EmitConvertToTarget, 2, |
| 9685 | /* 18473*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9686 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9687 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>) - Complexity = 17 |
| 9688 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9689 | /* 18483*/ /*Scope*/ 21, /*->18505*/ |
| 9690 | /* 18484*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 9691 | /* 18486*/ OPC_MoveParent, |
| 9692 | /* 18487*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9693 | /* 18489*/ OPC_EmitMergeInputChains1_0, |
| 9694 | /* 18490*/ OPC_EmitInteger, MVT::i32, 0, |
| 9695 | /* 18493*/ OPC_EmitConvertToTarget, 2, |
| 9696 | /* 18495*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9697 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9698 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>) - Complexity = 17 |
| 9699 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9700 | /* 18505*/ 0, /*End of Scope*/ |
| 9701 | /* 18506*/ /*SwitchType*/ 53, MVT::i64,// ->18561 |
| 9702 | /* 18508*/ OPC_MoveParent, |
| 9703 | /* 18509*/ OPC_MoveChild2, |
| 9704 | /* 18510*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9705 | /* 18513*/ OPC_RecordChild0, // #3 = $val |
| 9706 | /* 18514*/ OPC_MoveParent, |
| 9707 | /* 18515*/ OPC_Scope, 21, /*->18538*/ // 2 children in Scope |
| 9708 | /* 18517*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 9709 | /* 18519*/ OPC_MoveParent, |
| 9710 | /* 18520*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9711 | /* 18522*/ OPC_EmitMergeInputChains1_0, |
| 9712 | /* 18523*/ OPC_EmitInteger, MVT::i32, 0, |
| 9713 | /* 18526*/ OPC_EmitConvertToTarget, 2, |
| 9714 | /* 18528*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9715 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9716 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>) - Complexity = 17 |
| 9717 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9718 | /* 18538*/ /*Scope*/ 21, /*->18560*/ |
| 9719 | /* 18539*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 9720 | /* 18541*/ OPC_MoveParent, |
| 9721 | /* 18542*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9722 | /* 18544*/ OPC_EmitMergeInputChains1_0, |
| 9723 | /* 18545*/ OPC_EmitInteger, MVT::i32, 0, |
| 9724 | /* 18548*/ OPC_EmitConvertToTarget, 2, |
| 9725 | /* 18550*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9726 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9727 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>) - Complexity = 17 |
| 9728 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9729 | /* 18560*/ 0, /*End of Scope*/ |
| 9730 | /* 18561*/ 0, // EndSwitchType |
| 9731 | /* 18562*/ /*SwitchOpcode*/ 7|128,1/*135*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->18701 |
| 9732 | /* 18566*/ OPC_RecordChild0, // #1 = $off |
| 9733 | /* 18567*/ OPC_MoveChild0, |
| 9734 | /* 18568*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 9735 | /* 18571*/ OPC_MoveParent, |
| 9736 | /* 18572*/ OPC_MoveParent, |
| 9737 | /* 18573*/ OPC_MoveChild2, |
| 9738 | /* 18574*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9739 | /* 18577*/ OPC_RecordChild0, // #2 = $val |
| 9740 | /* 18578*/ OPC_MoveParent, |
| 9741 | /* 18579*/ OPC_Scope, 59, /*->18640*/ // 2 children in Scope |
| 9742 | /* 18581*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 9743 | /* 18583*/ OPC_MoveParent, |
| 9744 | /* 18584*/ OPC_Scope, 26, /*->18612*/ // 2 children in Scope |
| 9745 | /* 18586*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 9746 | /* 18588*/ OPC_EmitMergeInputChains1_0, |
| 9747 | /* 18589*/ OPC_EmitInteger, MVT::i32, 0, |
| 9748 | /* 18592*/ OPC_EmitInteger, MVT::i32, 0, |
| 9749 | /* 18595*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 9750 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 9751 | /* 18602*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9752 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 9753 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>) - Complexity = 16 |
| 9754 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 9755 | /* 18612*/ /*Scope*/ 26, /*->18639*/ |
| 9756 | /* 18613*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 9757 | /* 18615*/ OPC_EmitMergeInputChains1_0, |
| 9758 | /* 18616*/ OPC_EmitInteger, MVT::i32, 0, |
| 9759 | /* 18619*/ OPC_EmitInteger, MVT::i64, 0, |
| 9760 | /* 18622*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 9761 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 9762 | /* 18629*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9763 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 9764 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>) - Complexity = 16 |
| 9765 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 9766 | /* 18639*/ 0, /*End of Scope*/ |
| 9767 | /* 18640*/ /*Scope*/ 59, /*->18700*/ |
| 9768 | /* 18641*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 9769 | /* 18643*/ OPC_MoveParent, |
| 9770 | /* 18644*/ OPC_Scope, 26, /*->18672*/ // 2 children in Scope |
| 9771 | /* 18646*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 9772 | /* 18648*/ OPC_EmitMergeInputChains1_0, |
| 9773 | /* 18649*/ OPC_EmitInteger, MVT::i32, 0, |
| 9774 | /* 18652*/ OPC_EmitInteger, MVT::i32, 0, |
| 9775 | /* 18655*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 9776 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 9777 | /* 18662*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9778 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 9779 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>) - Complexity = 16 |
| 9780 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 9781 | /* 18672*/ /*Scope*/ 26, /*->18699*/ |
| 9782 | /* 18673*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 9783 | /* 18675*/ OPC_EmitMergeInputChains1_0, |
| 9784 | /* 18676*/ OPC_EmitInteger, MVT::i32, 0, |
| 9785 | /* 18679*/ OPC_EmitInteger, MVT::i64, 0, |
| 9786 | /* 18682*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 9787 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 9788 | /* 18689*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9789 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 9790 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>) - Complexity = 16 |
| 9791 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 9792 | /* 18699*/ 0, /*End of Scope*/ |
| 9793 | /* 18700*/ 0, /*End of Scope*/ |
| 9794 | /* 18701*/ 0, // EndSwitchOpcode |
| 9795 | /* 18702*/ /*Scope*/ 4|128,2/*260*/, /*->18964*/ |
| 9796 | /* 18704*/ OPC_RecordChild1, // #1 = $off |
| 9797 | /* 18705*/ OPC_Scope, 13|128,1/*141*/, /*->18849*/ // 3 children in Scope |
| 9798 | /* 18708*/ OPC_MoveChild1, |
| 9799 | /* 18709*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 9800 | /* 18712*/ OPC_MoveParent, |
| 9801 | /* 18713*/ OPC_MoveChild2, |
| 9802 | /* 18714*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9803 | /* 18717*/ OPC_RecordChild0, // #2 = $val |
| 9804 | /* 18718*/ OPC_MoveParent, |
| 9805 | /* 18719*/ OPC_Scope, 63, /*->18784*/ // 2 children in Scope |
| 9806 | /* 18721*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 9807 | /* 18723*/ OPC_MoveParent, |
| 9808 | /* 18724*/ OPC_Scope, 28, /*->18754*/ // 2 children in Scope |
| 9809 | /* 18726*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9810 | /* 18728*/ OPC_EmitMergeInputChains1_0, |
| 9811 | /* 18729*/ OPC_EmitInteger, MVT::i32, 0, |
| 9812 | /* 18732*/ OPC_EmitConvertToTarget, 1, |
| 9813 | /* 18734*/ OPC_EmitInteger, MVT::i32, 0, |
| 9814 | /* 18737*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 9815 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 9816 | /* 18744*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9817 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 9818 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>) - Complexity = 13 |
| 9819 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 9820 | /* 18754*/ /*Scope*/ 28, /*->18783*/ |
| 9821 | /* 18755*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9822 | /* 18757*/ OPC_EmitMergeInputChains1_0, |
| 9823 | /* 18758*/ OPC_EmitInteger, MVT::i32, 0, |
| 9824 | /* 18761*/ OPC_EmitConvertToTarget, 1, |
| 9825 | /* 18763*/ OPC_EmitInteger, MVT::i64, 0, |
| 9826 | /* 18766*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 9827 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 9828 | /* 18773*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9829 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 9830 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>) - Complexity = 13 |
| 9831 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 9832 | /* 18783*/ 0, /*End of Scope*/ |
| 9833 | /* 18784*/ /*Scope*/ 63, /*->18848*/ |
| 9834 | /* 18785*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 9835 | /* 18787*/ OPC_MoveParent, |
| 9836 | /* 18788*/ OPC_Scope, 28, /*->18818*/ // 2 children in Scope |
| 9837 | /* 18790*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9838 | /* 18792*/ OPC_EmitMergeInputChains1_0, |
| 9839 | /* 18793*/ OPC_EmitInteger, MVT::i32, 0, |
| 9840 | /* 18796*/ OPC_EmitConvertToTarget, 1, |
| 9841 | /* 18798*/ OPC_EmitInteger, MVT::i32, 0, |
| 9842 | /* 18801*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 9843 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 9844 | /* 18808*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9845 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 9846 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>) - Complexity = 13 |
| 9847 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 9848 | /* 18818*/ /*Scope*/ 28, /*->18847*/ |
| 9849 | /* 18819*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9850 | /* 18821*/ OPC_EmitMergeInputChains1_0, |
| 9851 | /* 18822*/ OPC_EmitInteger, MVT::i32, 0, |
| 9852 | /* 18825*/ OPC_EmitConvertToTarget, 1, |
| 9853 | /* 18827*/ OPC_EmitInteger, MVT::i64, 0, |
| 9854 | /* 18830*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 9855 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 9856 | /* 18837*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9857 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 9858 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>) - Complexity = 13 |
| 9859 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 9860 | /* 18847*/ 0, /*End of Scope*/ |
| 9861 | /* 18848*/ 0, /*End of Scope*/ |
| 9862 | /* 18849*/ /*Scope*/ 56, /*->18906*/ |
| 9863 | /* 18850*/ OPC_CheckChild1Type, MVT::i32, |
| 9864 | /* 18852*/ OPC_MoveChild2, |
| 9865 | /* 18853*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9866 | /* 18856*/ OPC_RecordChild0, // #2 = $val |
| 9867 | /* 18857*/ OPC_MoveParent, |
| 9868 | /* 18858*/ OPC_Scope, 22, /*->18882*/ // 2 children in Scope |
| 9869 | /* 18860*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 9870 | /* 18862*/ OPC_MoveParent, |
| 9871 | /* 18863*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9872 | /* 18865*/ OPC_EmitMergeInputChains1_0, |
| 9873 | /* 18866*/ OPC_EmitInteger, MVT::i32, 0, |
| 9874 | /* 18869*/ OPC_EmitInteger, MVT::i32, 0, |
| 9875 | /* 18872*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9876 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 9877 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>) - Complexity = 10 |
| 9878 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9879 | /* 18882*/ /*Scope*/ 22, /*->18905*/ |
| 9880 | /* 18883*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 9881 | /* 18885*/ OPC_MoveParent, |
| 9882 | /* 18886*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9883 | /* 18888*/ OPC_EmitMergeInputChains1_0, |
| 9884 | /* 18889*/ OPC_EmitInteger, MVT::i32, 0, |
| 9885 | /* 18892*/ OPC_EmitInteger, MVT::i32, 0, |
| 9886 | /* 18895*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9887 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 9888 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>) - Complexity = 10 |
| 9889 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9890 | /* 18905*/ 0, /*End of Scope*/ |
| 9891 | /* 18906*/ /*Scope*/ 56, /*->18963*/ |
| 9892 | /* 18907*/ OPC_CheckChild1Type, MVT::i64, |
| 9893 | /* 18909*/ OPC_MoveChild2, |
| 9894 | /* 18910*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9895 | /* 18913*/ OPC_RecordChild0, // #2 = $val |
| 9896 | /* 18914*/ OPC_MoveParent, |
| 9897 | /* 18915*/ OPC_Scope, 22, /*->18939*/ // 2 children in Scope |
| 9898 | /* 18917*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 9899 | /* 18919*/ OPC_MoveParent, |
| 9900 | /* 18920*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9901 | /* 18922*/ OPC_EmitMergeInputChains1_0, |
| 9902 | /* 18923*/ OPC_EmitInteger, MVT::i32, 0, |
| 9903 | /* 18926*/ OPC_EmitInteger, MVT::i64, 0, |
| 9904 | /* 18929*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9905 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 9906 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_8>>) - Complexity = 10 |
| 9907 | // Dst: (ATOMIC_RMW8_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9908 | /* 18939*/ /*Scope*/ 22, /*->18962*/ |
| 9909 | /* 18940*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 9910 | /* 18942*/ OPC_MoveParent, |
| 9911 | /* 18943*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9912 | /* 18945*/ OPC_EmitMergeInputChains1_0, |
| 9913 | /* 18946*/ OPC_EmitInteger, MVT::i32, 0, |
| 9914 | /* 18949*/ OPC_EmitInteger, MVT::i64, 0, |
| 9915 | /* 18952*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9916 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 9917 | // Src: (anyext:{ *:[i64] } (atomic_load_sub:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_sub_16>>) - Complexity = 10 |
| 9918 | // Dst: (ATOMIC_RMW16_U_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9919 | /* 18962*/ 0, /*End of Scope*/ |
| 9920 | /* 18963*/ 0, /*End of Scope*/ |
| 9921 | /* 18964*/ 0, /*End of Scope*/ |
| 9922 | /* 18965*/ /*SwitchOpcode*/ 18|128,5/*658*/, TARGET_VAL(ISD::ATOMIC_LOAD_AND),// ->19627 |
| 9923 | /* 18969*/ OPC_RecordMemRef, |
| 9924 | /* 18970*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 9925 | /* 18971*/ OPC_Scope, 6|128,3/*390*/, /*->19364*/ // 2 children in Scope |
| 9926 | /* 18974*/ OPC_MoveChild1, |
| 9927 | /* 18975*/ OPC_SwitchOpcode /*3 cases */, 121, TARGET_VAL(ISD::ADD),// ->19100 |
| 9928 | /* 18979*/ OPC_RecordChild0, // #1 = $addr |
| 9929 | /* 18980*/ OPC_RecordChild1, // #2 = $off |
| 9930 | /* 18981*/ OPC_MoveChild1, |
| 9931 | /* 18982*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 9932 | /* 18985*/ OPC_MoveParent, |
| 9933 | /* 18986*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 9934 | /* 18988*/ OPC_SwitchType /*2 cases */, 53, MVT::i32,// ->19044 |
| 9935 | /* 18991*/ OPC_MoveParent, |
| 9936 | /* 18992*/ OPC_MoveChild2, |
| 9937 | /* 18993*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9938 | /* 18996*/ OPC_RecordChild0, // #3 = $val |
| 9939 | /* 18997*/ OPC_MoveParent, |
| 9940 | /* 18998*/ OPC_Scope, 21, /*->19021*/ // 2 children in Scope |
| 9941 | /* 19000*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 9942 | /* 19002*/ OPC_MoveParent, |
| 9943 | /* 19003*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9944 | /* 19005*/ OPC_EmitMergeInputChains1_0, |
| 9945 | /* 19006*/ OPC_EmitInteger, MVT::i32, 0, |
| 9946 | /* 19009*/ OPC_EmitConvertToTarget, 2, |
| 9947 | /* 19011*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9948 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9949 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>) - Complexity = 17 |
| 9950 | // Dst: (ATOMIC_RMW8_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9951 | /* 19021*/ /*Scope*/ 21, /*->19043*/ |
| 9952 | /* 19022*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 9953 | /* 19024*/ OPC_MoveParent, |
| 9954 | /* 19025*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9955 | /* 19027*/ OPC_EmitMergeInputChains1_0, |
| 9956 | /* 19028*/ OPC_EmitInteger, MVT::i32, 0, |
| 9957 | /* 19031*/ OPC_EmitConvertToTarget, 2, |
| 9958 | /* 19033*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 9959 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9960 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>) - Complexity = 17 |
| 9961 | // Dst: (ATOMIC_RMW16_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 9962 | /* 19043*/ 0, /*End of Scope*/ |
| 9963 | /* 19044*/ /*SwitchType*/ 53, MVT::i64,// ->19099 |
| 9964 | /* 19046*/ OPC_MoveParent, |
| 9965 | /* 19047*/ OPC_MoveChild2, |
| 9966 | /* 19048*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 9967 | /* 19051*/ OPC_RecordChild0, // #3 = $val |
| 9968 | /* 19052*/ OPC_MoveParent, |
| 9969 | /* 19053*/ OPC_Scope, 21, /*->19076*/ // 2 children in Scope |
| 9970 | /* 19055*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 9971 | /* 19057*/ OPC_MoveParent, |
| 9972 | /* 19058*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9973 | /* 19060*/ OPC_EmitMergeInputChains1_0, |
| 9974 | /* 19061*/ OPC_EmitInteger, MVT::i32, 0, |
| 9975 | /* 19064*/ OPC_EmitConvertToTarget, 2, |
| 9976 | /* 19066*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9977 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9978 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>) - Complexity = 17 |
| 9979 | // Dst: (ATOMIC_RMW8_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9980 | /* 19076*/ /*Scope*/ 21, /*->19098*/ |
| 9981 | /* 19077*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 9982 | /* 19079*/ OPC_MoveParent, |
| 9983 | /* 19080*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 9984 | /* 19082*/ OPC_EmitMergeInputChains1_0, |
| 9985 | /* 19083*/ OPC_EmitInteger, MVT::i32, 0, |
| 9986 | /* 19086*/ OPC_EmitConvertToTarget, 2, |
| 9987 | /* 19088*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 9988 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 9989 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>) - Complexity = 17 |
| 9990 | // Dst: (ATOMIC_RMW16_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 9991 | /* 19098*/ 0, /*End of Scope*/ |
| 9992 | /* 19099*/ 0, // EndSwitchType |
| 9993 | /* 19100*/ /*SwitchOpcode*/ 121, TARGET_VAL(ISD::OR),// ->19224 |
| 9994 | /* 19103*/ OPC_RecordChild0, // #1 = $addr |
| 9995 | /* 19104*/ OPC_RecordChild1, // #2 = $off |
| 9996 | /* 19105*/ OPC_MoveChild1, |
| 9997 | /* 19106*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 9998 | /* 19109*/ OPC_MoveParent, |
| 9999 | /* 19110*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 10000 | /* 19112*/ OPC_SwitchType /*2 cases */, 53, MVT::i32,// ->19168 |
| 10001 | /* 19115*/ OPC_MoveParent, |
| 10002 | /* 19116*/ OPC_MoveChild2, |
| 10003 | /* 19117*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10004 | /* 19120*/ OPC_RecordChild0, // #3 = $val |
| 10005 | /* 19121*/ OPC_MoveParent, |
| 10006 | /* 19122*/ OPC_Scope, 21, /*->19145*/ // 2 children in Scope |
| 10007 | /* 19124*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 10008 | /* 19126*/ OPC_MoveParent, |
| 10009 | /* 19127*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10010 | /* 19129*/ OPC_EmitMergeInputChains1_0, |
| 10011 | /* 19130*/ OPC_EmitInteger, MVT::i32, 0, |
| 10012 | /* 19133*/ OPC_EmitConvertToTarget, 2, |
| 10013 | /* 19135*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10014 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10015 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>) - Complexity = 17 |
| 10016 | // Dst: (ATOMIC_RMW8_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10017 | /* 19145*/ /*Scope*/ 21, /*->19167*/ |
| 10018 | /* 19146*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 10019 | /* 19148*/ OPC_MoveParent, |
| 10020 | /* 19149*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10021 | /* 19151*/ OPC_EmitMergeInputChains1_0, |
| 10022 | /* 19152*/ OPC_EmitInteger, MVT::i32, 0, |
| 10023 | /* 19155*/ OPC_EmitConvertToTarget, 2, |
| 10024 | /* 19157*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10025 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10026 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>) - Complexity = 17 |
| 10027 | // Dst: (ATOMIC_RMW16_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10028 | /* 19167*/ 0, /*End of Scope*/ |
| 10029 | /* 19168*/ /*SwitchType*/ 53, MVT::i64,// ->19223 |
| 10030 | /* 19170*/ OPC_MoveParent, |
| 10031 | /* 19171*/ OPC_MoveChild2, |
| 10032 | /* 19172*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10033 | /* 19175*/ OPC_RecordChild0, // #3 = $val |
| 10034 | /* 19176*/ OPC_MoveParent, |
| 10035 | /* 19177*/ OPC_Scope, 21, /*->19200*/ // 2 children in Scope |
| 10036 | /* 19179*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 10037 | /* 19181*/ OPC_MoveParent, |
| 10038 | /* 19182*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10039 | /* 19184*/ OPC_EmitMergeInputChains1_0, |
| 10040 | /* 19185*/ OPC_EmitInteger, MVT::i32, 0, |
| 10041 | /* 19188*/ OPC_EmitConvertToTarget, 2, |
| 10042 | /* 19190*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10043 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10044 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>) - Complexity = 17 |
| 10045 | // Dst: (ATOMIC_RMW8_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10046 | /* 19200*/ /*Scope*/ 21, /*->19222*/ |
| 10047 | /* 19201*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 10048 | /* 19203*/ OPC_MoveParent, |
| 10049 | /* 19204*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10050 | /* 19206*/ OPC_EmitMergeInputChains1_0, |
| 10051 | /* 19207*/ OPC_EmitInteger, MVT::i32, 0, |
| 10052 | /* 19210*/ OPC_EmitConvertToTarget, 2, |
| 10053 | /* 19212*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10054 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10055 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>) - Complexity = 17 |
| 10056 | // Dst: (ATOMIC_RMW16_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10057 | /* 19222*/ 0, /*End of Scope*/ |
| 10058 | /* 19223*/ 0, // EndSwitchType |
| 10059 | /* 19224*/ /*SwitchOpcode*/ 7|128,1/*135*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->19363 |
| 10060 | /* 19228*/ OPC_RecordChild0, // #1 = $off |
| 10061 | /* 19229*/ OPC_MoveChild0, |
| 10062 | /* 19230*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 10063 | /* 19233*/ OPC_MoveParent, |
| 10064 | /* 19234*/ OPC_MoveParent, |
| 10065 | /* 19235*/ OPC_MoveChild2, |
| 10066 | /* 19236*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10067 | /* 19239*/ OPC_RecordChild0, // #2 = $val |
| 10068 | /* 19240*/ OPC_MoveParent, |
| 10069 | /* 19241*/ OPC_Scope, 59, /*->19302*/ // 2 children in Scope |
| 10070 | /* 19243*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 10071 | /* 19245*/ OPC_MoveParent, |
| 10072 | /* 19246*/ OPC_Scope, 26, /*->19274*/ // 2 children in Scope |
| 10073 | /* 19248*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 10074 | /* 19250*/ OPC_EmitMergeInputChains1_0, |
| 10075 | /* 19251*/ OPC_EmitInteger, MVT::i32, 0, |
| 10076 | /* 19254*/ OPC_EmitInteger, MVT::i32, 0, |
| 10077 | /* 19257*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 10078 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 10079 | /* 19264*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10080 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 10081 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>) - Complexity = 16 |
| 10082 | // Dst: (ATOMIC_RMW8_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 10083 | /* 19274*/ /*Scope*/ 26, /*->19301*/ |
| 10084 | /* 19275*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 10085 | /* 19277*/ OPC_EmitMergeInputChains1_0, |
| 10086 | /* 19278*/ OPC_EmitInteger, MVT::i32, 0, |
| 10087 | /* 19281*/ OPC_EmitInteger, MVT::i64, 0, |
| 10088 | /* 19284*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 10089 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 10090 | /* 19291*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10091 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 10092 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>) - Complexity = 16 |
| 10093 | // Dst: (ATOMIC_RMW8_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 10094 | /* 19301*/ 0, /*End of Scope*/ |
| 10095 | /* 19302*/ /*Scope*/ 59, /*->19362*/ |
| 10096 | /* 19303*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 10097 | /* 19305*/ OPC_MoveParent, |
| 10098 | /* 19306*/ OPC_Scope, 26, /*->19334*/ // 2 children in Scope |
| 10099 | /* 19308*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 10100 | /* 19310*/ OPC_EmitMergeInputChains1_0, |
| 10101 | /* 19311*/ OPC_EmitInteger, MVT::i32, 0, |
| 10102 | /* 19314*/ OPC_EmitInteger, MVT::i32, 0, |
| 10103 | /* 19317*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 10104 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 10105 | /* 19324*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10106 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 10107 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>) - Complexity = 16 |
| 10108 | // Dst: (ATOMIC_RMW16_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 10109 | /* 19334*/ /*Scope*/ 26, /*->19361*/ |
| 10110 | /* 19335*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 10111 | /* 19337*/ OPC_EmitMergeInputChains1_0, |
| 10112 | /* 19338*/ OPC_EmitInteger, MVT::i32, 0, |
| 10113 | /* 19341*/ OPC_EmitInteger, MVT::i64, 0, |
| 10114 | /* 19344*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 10115 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 10116 | /* 19351*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10117 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 10118 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>) - Complexity = 16 |
| 10119 | // Dst: (ATOMIC_RMW16_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 10120 | /* 19361*/ 0, /*End of Scope*/ |
| 10121 | /* 19362*/ 0, /*End of Scope*/ |
| 10122 | /* 19363*/ 0, // EndSwitchOpcode |
| 10123 | /* 19364*/ /*Scope*/ 4|128,2/*260*/, /*->19626*/ |
| 10124 | /* 19366*/ OPC_RecordChild1, // #1 = $off |
| 10125 | /* 19367*/ OPC_Scope, 13|128,1/*141*/, /*->19511*/ // 3 children in Scope |
| 10126 | /* 19370*/ OPC_MoveChild1, |
| 10127 | /* 19371*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 10128 | /* 19374*/ OPC_MoveParent, |
| 10129 | /* 19375*/ OPC_MoveChild2, |
| 10130 | /* 19376*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10131 | /* 19379*/ OPC_RecordChild0, // #2 = $val |
| 10132 | /* 19380*/ OPC_MoveParent, |
| 10133 | /* 19381*/ OPC_Scope, 63, /*->19446*/ // 2 children in Scope |
| 10134 | /* 19383*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 10135 | /* 19385*/ OPC_MoveParent, |
| 10136 | /* 19386*/ OPC_Scope, 28, /*->19416*/ // 2 children in Scope |
| 10137 | /* 19388*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10138 | /* 19390*/ OPC_EmitMergeInputChains1_0, |
| 10139 | /* 19391*/ OPC_EmitInteger, MVT::i32, 0, |
| 10140 | /* 19394*/ OPC_EmitConvertToTarget, 1, |
| 10141 | /* 19396*/ OPC_EmitInteger, MVT::i32, 0, |
| 10142 | /* 19399*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 10143 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 10144 | /* 19406*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10145 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 10146 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>) - Complexity = 13 |
| 10147 | // Dst: (ATOMIC_RMW8_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 10148 | /* 19416*/ /*Scope*/ 28, /*->19445*/ |
| 10149 | /* 19417*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10150 | /* 19419*/ OPC_EmitMergeInputChains1_0, |
| 10151 | /* 19420*/ OPC_EmitInteger, MVT::i32, 0, |
| 10152 | /* 19423*/ OPC_EmitConvertToTarget, 1, |
| 10153 | /* 19425*/ OPC_EmitInteger, MVT::i64, 0, |
| 10154 | /* 19428*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 10155 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 10156 | /* 19435*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10157 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 10158 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>) - Complexity = 13 |
| 10159 | // Dst: (ATOMIC_RMW8_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 10160 | /* 19445*/ 0, /*End of Scope*/ |
| 10161 | /* 19446*/ /*Scope*/ 63, /*->19510*/ |
| 10162 | /* 19447*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 10163 | /* 19449*/ OPC_MoveParent, |
| 10164 | /* 19450*/ OPC_Scope, 28, /*->19480*/ // 2 children in Scope |
| 10165 | /* 19452*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10166 | /* 19454*/ OPC_EmitMergeInputChains1_0, |
| 10167 | /* 19455*/ OPC_EmitInteger, MVT::i32, 0, |
| 10168 | /* 19458*/ OPC_EmitConvertToTarget, 1, |
| 10169 | /* 19460*/ OPC_EmitInteger, MVT::i32, 0, |
| 10170 | /* 19463*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 10171 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 10172 | /* 19470*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10173 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 10174 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>) - Complexity = 13 |
| 10175 | // Dst: (ATOMIC_RMW16_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 10176 | /* 19480*/ /*Scope*/ 28, /*->19509*/ |
| 10177 | /* 19481*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10178 | /* 19483*/ OPC_EmitMergeInputChains1_0, |
| 10179 | /* 19484*/ OPC_EmitInteger, MVT::i32, 0, |
| 10180 | /* 19487*/ OPC_EmitConvertToTarget, 1, |
| 10181 | /* 19489*/ OPC_EmitInteger, MVT::i64, 0, |
| 10182 | /* 19492*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 10183 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 10184 | /* 19499*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10185 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 10186 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>) - Complexity = 13 |
| 10187 | // Dst: (ATOMIC_RMW16_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 10188 | /* 19509*/ 0, /*End of Scope*/ |
| 10189 | /* 19510*/ 0, /*End of Scope*/ |
| 10190 | /* 19511*/ /*Scope*/ 56, /*->19568*/ |
| 10191 | /* 19512*/ OPC_CheckChild1Type, MVT::i32, |
| 10192 | /* 19514*/ OPC_MoveChild2, |
| 10193 | /* 19515*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10194 | /* 19518*/ OPC_RecordChild0, // #2 = $val |
| 10195 | /* 19519*/ OPC_MoveParent, |
| 10196 | /* 19520*/ OPC_Scope, 22, /*->19544*/ // 2 children in Scope |
| 10197 | /* 19522*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 10198 | /* 19524*/ OPC_MoveParent, |
| 10199 | /* 19525*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10200 | /* 19527*/ OPC_EmitMergeInputChains1_0, |
| 10201 | /* 19528*/ OPC_EmitInteger, MVT::i32, 0, |
| 10202 | /* 19531*/ OPC_EmitInteger, MVT::i32, 0, |
| 10203 | /* 19534*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10204 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 10205 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>) - Complexity = 10 |
| 10206 | // Dst: (ATOMIC_RMW8_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10207 | /* 19544*/ /*Scope*/ 22, /*->19567*/ |
| 10208 | /* 19545*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 10209 | /* 19547*/ OPC_MoveParent, |
| 10210 | /* 19548*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10211 | /* 19550*/ OPC_EmitMergeInputChains1_0, |
| 10212 | /* 19551*/ OPC_EmitInteger, MVT::i32, 0, |
| 10213 | /* 19554*/ OPC_EmitInteger, MVT::i32, 0, |
| 10214 | /* 19557*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10215 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 10216 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>) - Complexity = 10 |
| 10217 | // Dst: (ATOMIC_RMW16_U_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10218 | /* 19567*/ 0, /*End of Scope*/ |
| 10219 | /* 19568*/ /*Scope*/ 56, /*->19625*/ |
| 10220 | /* 19569*/ OPC_CheckChild1Type, MVT::i64, |
| 10221 | /* 19571*/ OPC_MoveChild2, |
| 10222 | /* 19572*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10223 | /* 19575*/ OPC_RecordChild0, // #2 = $val |
| 10224 | /* 19576*/ OPC_MoveParent, |
| 10225 | /* 19577*/ OPC_Scope, 22, /*->19601*/ // 2 children in Scope |
| 10226 | /* 19579*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 10227 | /* 19581*/ OPC_MoveParent, |
| 10228 | /* 19582*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10229 | /* 19584*/ OPC_EmitMergeInputChains1_0, |
| 10230 | /* 19585*/ OPC_EmitInteger, MVT::i32, 0, |
| 10231 | /* 19588*/ OPC_EmitInteger, MVT::i64, 0, |
| 10232 | /* 19591*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10233 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 10234 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_8>>) - Complexity = 10 |
| 10235 | // Dst: (ATOMIC_RMW8_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10236 | /* 19601*/ /*Scope*/ 22, /*->19624*/ |
| 10237 | /* 19602*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 10238 | /* 19604*/ OPC_MoveParent, |
| 10239 | /* 19605*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10240 | /* 19607*/ OPC_EmitMergeInputChains1_0, |
| 10241 | /* 19608*/ OPC_EmitInteger, MVT::i32, 0, |
| 10242 | /* 19611*/ OPC_EmitInteger, MVT::i64, 0, |
| 10243 | /* 19614*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10244 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 10245 | // Src: (anyext:{ *:[i64] } (atomic_load_and:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_and_16>>) - Complexity = 10 |
| 10246 | // Dst: (ATOMIC_RMW16_U_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10247 | /* 19624*/ 0, /*End of Scope*/ |
| 10248 | /* 19625*/ 0, /*End of Scope*/ |
| 10249 | /* 19626*/ 0, /*End of Scope*/ |
| 10250 | /* 19627*/ /*SwitchOpcode*/ 18|128,5/*658*/, TARGET_VAL(ISD::ATOMIC_LOAD_OR),// ->20289 |
| 10251 | /* 19631*/ OPC_RecordMemRef, |
| 10252 | /* 19632*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 10253 | /* 19633*/ OPC_Scope, 6|128,3/*390*/, /*->20026*/ // 2 children in Scope |
| 10254 | /* 19636*/ OPC_MoveChild1, |
| 10255 | /* 19637*/ OPC_SwitchOpcode /*3 cases */, 121, TARGET_VAL(ISD::ADD),// ->19762 |
| 10256 | /* 19641*/ OPC_RecordChild0, // #1 = $addr |
| 10257 | /* 19642*/ OPC_RecordChild1, // #2 = $off |
| 10258 | /* 19643*/ OPC_MoveChild1, |
| 10259 | /* 19644*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 10260 | /* 19647*/ OPC_MoveParent, |
| 10261 | /* 19648*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 10262 | /* 19650*/ OPC_SwitchType /*2 cases */, 53, MVT::i32,// ->19706 |
| 10263 | /* 19653*/ OPC_MoveParent, |
| 10264 | /* 19654*/ OPC_MoveChild2, |
| 10265 | /* 19655*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10266 | /* 19658*/ OPC_RecordChild0, // #3 = $val |
| 10267 | /* 19659*/ OPC_MoveParent, |
| 10268 | /* 19660*/ OPC_Scope, 21, /*->19683*/ // 2 children in Scope |
| 10269 | /* 19662*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 10270 | /* 19664*/ OPC_MoveParent, |
| 10271 | /* 19665*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10272 | /* 19667*/ OPC_EmitMergeInputChains1_0, |
| 10273 | /* 19668*/ OPC_EmitInteger, MVT::i32, 0, |
| 10274 | /* 19671*/ OPC_EmitConvertToTarget, 2, |
| 10275 | /* 19673*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10276 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10277 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>) - Complexity = 17 |
| 10278 | // Dst: (ATOMIC_RMW8_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10279 | /* 19683*/ /*Scope*/ 21, /*->19705*/ |
| 10280 | /* 19684*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 10281 | /* 19686*/ OPC_MoveParent, |
| 10282 | /* 19687*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10283 | /* 19689*/ OPC_EmitMergeInputChains1_0, |
| 10284 | /* 19690*/ OPC_EmitInteger, MVT::i32, 0, |
| 10285 | /* 19693*/ OPC_EmitConvertToTarget, 2, |
| 10286 | /* 19695*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10287 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10288 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>) - Complexity = 17 |
| 10289 | // Dst: (ATOMIC_RMW16_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10290 | /* 19705*/ 0, /*End of Scope*/ |
| 10291 | /* 19706*/ /*SwitchType*/ 53, MVT::i64,// ->19761 |
| 10292 | /* 19708*/ OPC_MoveParent, |
| 10293 | /* 19709*/ OPC_MoveChild2, |
| 10294 | /* 19710*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10295 | /* 19713*/ OPC_RecordChild0, // #3 = $val |
| 10296 | /* 19714*/ OPC_MoveParent, |
| 10297 | /* 19715*/ OPC_Scope, 21, /*->19738*/ // 2 children in Scope |
| 10298 | /* 19717*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 10299 | /* 19719*/ OPC_MoveParent, |
| 10300 | /* 19720*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10301 | /* 19722*/ OPC_EmitMergeInputChains1_0, |
| 10302 | /* 19723*/ OPC_EmitInteger, MVT::i32, 0, |
| 10303 | /* 19726*/ OPC_EmitConvertToTarget, 2, |
| 10304 | /* 19728*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10305 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10306 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>) - Complexity = 17 |
| 10307 | // Dst: (ATOMIC_RMW8_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10308 | /* 19738*/ /*Scope*/ 21, /*->19760*/ |
| 10309 | /* 19739*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 10310 | /* 19741*/ OPC_MoveParent, |
| 10311 | /* 19742*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10312 | /* 19744*/ OPC_EmitMergeInputChains1_0, |
| 10313 | /* 19745*/ OPC_EmitInteger, MVT::i32, 0, |
| 10314 | /* 19748*/ OPC_EmitConvertToTarget, 2, |
| 10315 | /* 19750*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10316 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10317 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>) - Complexity = 17 |
| 10318 | // Dst: (ATOMIC_RMW16_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10319 | /* 19760*/ 0, /*End of Scope*/ |
| 10320 | /* 19761*/ 0, // EndSwitchType |
| 10321 | /* 19762*/ /*SwitchOpcode*/ 121, TARGET_VAL(ISD::OR),// ->19886 |
| 10322 | /* 19765*/ OPC_RecordChild0, // #1 = $addr |
| 10323 | /* 19766*/ OPC_RecordChild1, // #2 = $off |
| 10324 | /* 19767*/ OPC_MoveChild1, |
| 10325 | /* 19768*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 10326 | /* 19771*/ OPC_MoveParent, |
| 10327 | /* 19772*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 10328 | /* 19774*/ OPC_SwitchType /*2 cases */, 53, MVT::i32,// ->19830 |
| 10329 | /* 19777*/ OPC_MoveParent, |
| 10330 | /* 19778*/ OPC_MoveChild2, |
| 10331 | /* 19779*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10332 | /* 19782*/ OPC_RecordChild0, // #3 = $val |
| 10333 | /* 19783*/ OPC_MoveParent, |
| 10334 | /* 19784*/ OPC_Scope, 21, /*->19807*/ // 2 children in Scope |
| 10335 | /* 19786*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 10336 | /* 19788*/ OPC_MoveParent, |
| 10337 | /* 19789*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10338 | /* 19791*/ OPC_EmitMergeInputChains1_0, |
| 10339 | /* 19792*/ OPC_EmitInteger, MVT::i32, 0, |
| 10340 | /* 19795*/ OPC_EmitConvertToTarget, 2, |
| 10341 | /* 19797*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10342 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10343 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>) - Complexity = 17 |
| 10344 | // Dst: (ATOMIC_RMW8_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10345 | /* 19807*/ /*Scope*/ 21, /*->19829*/ |
| 10346 | /* 19808*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 10347 | /* 19810*/ OPC_MoveParent, |
| 10348 | /* 19811*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10349 | /* 19813*/ OPC_EmitMergeInputChains1_0, |
| 10350 | /* 19814*/ OPC_EmitInteger, MVT::i32, 0, |
| 10351 | /* 19817*/ OPC_EmitConvertToTarget, 2, |
| 10352 | /* 19819*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10353 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10354 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>) - Complexity = 17 |
| 10355 | // Dst: (ATOMIC_RMW16_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10356 | /* 19829*/ 0, /*End of Scope*/ |
| 10357 | /* 19830*/ /*SwitchType*/ 53, MVT::i64,// ->19885 |
| 10358 | /* 19832*/ OPC_MoveParent, |
| 10359 | /* 19833*/ OPC_MoveChild2, |
| 10360 | /* 19834*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10361 | /* 19837*/ OPC_RecordChild0, // #3 = $val |
| 10362 | /* 19838*/ OPC_MoveParent, |
| 10363 | /* 19839*/ OPC_Scope, 21, /*->19862*/ // 2 children in Scope |
| 10364 | /* 19841*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 10365 | /* 19843*/ OPC_MoveParent, |
| 10366 | /* 19844*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10367 | /* 19846*/ OPC_EmitMergeInputChains1_0, |
| 10368 | /* 19847*/ OPC_EmitInteger, MVT::i32, 0, |
| 10369 | /* 19850*/ OPC_EmitConvertToTarget, 2, |
| 10370 | /* 19852*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10371 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10372 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>) - Complexity = 17 |
| 10373 | // Dst: (ATOMIC_RMW8_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10374 | /* 19862*/ /*Scope*/ 21, /*->19884*/ |
| 10375 | /* 19863*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 10376 | /* 19865*/ OPC_MoveParent, |
| 10377 | /* 19866*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10378 | /* 19868*/ OPC_EmitMergeInputChains1_0, |
| 10379 | /* 19869*/ OPC_EmitInteger, MVT::i32, 0, |
| 10380 | /* 19872*/ OPC_EmitConvertToTarget, 2, |
| 10381 | /* 19874*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10382 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10383 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>) - Complexity = 17 |
| 10384 | // Dst: (ATOMIC_RMW16_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10385 | /* 19884*/ 0, /*End of Scope*/ |
| 10386 | /* 19885*/ 0, // EndSwitchType |
| 10387 | /* 19886*/ /*SwitchOpcode*/ 7|128,1/*135*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->20025 |
| 10388 | /* 19890*/ OPC_RecordChild0, // #1 = $off |
| 10389 | /* 19891*/ OPC_MoveChild0, |
| 10390 | /* 19892*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 10391 | /* 19895*/ OPC_MoveParent, |
| 10392 | /* 19896*/ OPC_MoveParent, |
| 10393 | /* 19897*/ OPC_MoveChild2, |
| 10394 | /* 19898*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10395 | /* 19901*/ OPC_RecordChild0, // #2 = $val |
| 10396 | /* 19902*/ OPC_MoveParent, |
| 10397 | /* 19903*/ OPC_Scope, 59, /*->19964*/ // 2 children in Scope |
| 10398 | /* 19905*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 10399 | /* 19907*/ OPC_MoveParent, |
| 10400 | /* 19908*/ OPC_Scope, 26, /*->19936*/ // 2 children in Scope |
| 10401 | /* 19910*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 10402 | /* 19912*/ OPC_EmitMergeInputChains1_0, |
| 10403 | /* 19913*/ OPC_EmitInteger, MVT::i32, 0, |
| 10404 | /* 19916*/ OPC_EmitInteger, MVT::i32, 0, |
| 10405 | /* 19919*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 10406 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 10407 | /* 19926*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10408 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 10409 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>) - Complexity = 16 |
| 10410 | // Dst: (ATOMIC_RMW8_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 10411 | /* 19936*/ /*Scope*/ 26, /*->19963*/ |
| 10412 | /* 19937*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 10413 | /* 19939*/ OPC_EmitMergeInputChains1_0, |
| 10414 | /* 19940*/ OPC_EmitInteger, MVT::i32, 0, |
| 10415 | /* 19943*/ OPC_EmitInteger, MVT::i64, 0, |
| 10416 | /* 19946*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 10417 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 10418 | /* 19953*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10419 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 10420 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>) - Complexity = 16 |
| 10421 | // Dst: (ATOMIC_RMW8_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 10422 | /* 19963*/ 0, /*End of Scope*/ |
| 10423 | /* 19964*/ /*Scope*/ 59, /*->20024*/ |
| 10424 | /* 19965*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 10425 | /* 19967*/ OPC_MoveParent, |
| 10426 | /* 19968*/ OPC_Scope, 26, /*->19996*/ // 2 children in Scope |
| 10427 | /* 19970*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 10428 | /* 19972*/ OPC_EmitMergeInputChains1_0, |
| 10429 | /* 19973*/ OPC_EmitInteger, MVT::i32, 0, |
| 10430 | /* 19976*/ OPC_EmitInteger, MVT::i32, 0, |
| 10431 | /* 19979*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 10432 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 10433 | /* 19986*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10434 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 10435 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>) - Complexity = 16 |
| 10436 | // Dst: (ATOMIC_RMW16_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 10437 | /* 19996*/ /*Scope*/ 26, /*->20023*/ |
| 10438 | /* 19997*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 10439 | /* 19999*/ OPC_EmitMergeInputChains1_0, |
| 10440 | /* 20000*/ OPC_EmitInteger, MVT::i32, 0, |
| 10441 | /* 20003*/ OPC_EmitInteger, MVT::i64, 0, |
| 10442 | /* 20006*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 10443 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 10444 | /* 20013*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10445 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 10446 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>) - Complexity = 16 |
| 10447 | // Dst: (ATOMIC_RMW16_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 10448 | /* 20023*/ 0, /*End of Scope*/ |
| 10449 | /* 20024*/ 0, /*End of Scope*/ |
| 10450 | /* 20025*/ 0, // EndSwitchOpcode |
| 10451 | /* 20026*/ /*Scope*/ 4|128,2/*260*/, /*->20288*/ |
| 10452 | /* 20028*/ OPC_RecordChild1, // #1 = $off |
| 10453 | /* 20029*/ OPC_Scope, 13|128,1/*141*/, /*->20173*/ // 3 children in Scope |
| 10454 | /* 20032*/ OPC_MoveChild1, |
| 10455 | /* 20033*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 10456 | /* 20036*/ OPC_MoveParent, |
| 10457 | /* 20037*/ OPC_MoveChild2, |
| 10458 | /* 20038*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10459 | /* 20041*/ OPC_RecordChild0, // #2 = $val |
| 10460 | /* 20042*/ OPC_MoveParent, |
| 10461 | /* 20043*/ OPC_Scope, 63, /*->20108*/ // 2 children in Scope |
| 10462 | /* 20045*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 10463 | /* 20047*/ OPC_MoveParent, |
| 10464 | /* 20048*/ OPC_Scope, 28, /*->20078*/ // 2 children in Scope |
| 10465 | /* 20050*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10466 | /* 20052*/ OPC_EmitMergeInputChains1_0, |
| 10467 | /* 20053*/ OPC_EmitInteger, MVT::i32, 0, |
| 10468 | /* 20056*/ OPC_EmitConvertToTarget, 1, |
| 10469 | /* 20058*/ OPC_EmitInteger, MVT::i32, 0, |
| 10470 | /* 20061*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 10471 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 10472 | /* 20068*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10473 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 10474 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>) - Complexity = 13 |
| 10475 | // Dst: (ATOMIC_RMW8_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 10476 | /* 20078*/ /*Scope*/ 28, /*->20107*/ |
| 10477 | /* 20079*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10478 | /* 20081*/ OPC_EmitMergeInputChains1_0, |
| 10479 | /* 20082*/ OPC_EmitInteger, MVT::i32, 0, |
| 10480 | /* 20085*/ OPC_EmitConvertToTarget, 1, |
| 10481 | /* 20087*/ OPC_EmitInteger, MVT::i64, 0, |
| 10482 | /* 20090*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 10483 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 10484 | /* 20097*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10485 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 10486 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>) - Complexity = 13 |
| 10487 | // Dst: (ATOMIC_RMW8_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 10488 | /* 20107*/ 0, /*End of Scope*/ |
| 10489 | /* 20108*/ /*Scope*/ 63, /*->20172*/ |
| 10490 | /* 20109*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 10491 | /* 20111*/ OPC_MoveParent, |
| 10492 | /* 20112*/ OPC_Scope, 28, /*->20142*/ // 2 children in Scope |
| 10493 | /* 20114*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10494 | /* 20116*/ OPC_EmitMergeInputChains1_0, |
| 10495 | /* 20117*/ OPC_EmitInteger, MVT::i32, 0, |
| 10496 | /* 20120*/ OPC_EmitConvertToTarget, 1, |
| 10497 | /* 20122*/ OPC_EmitInteger, MVT::i32, 0, |
| 10498 | /* 20125*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 10499 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 10500 | /* 20132*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10501 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 10502 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>) - Complexity = 13 |
| 10503 | // Dst: (ATOMIC_RMW16_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 10504 | /* 20142*/ /*Scope*/ 28, /*->20171*/ |
| 10505 | /* 20143*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10506 | /* 20145*/ OPC_EmitMergeInputChains1_0, |
| 10507 | /* 20146*/ OPC_EmitInteger, MVT::i32, 0, |
| 10508 | /* 20149*/ OPC_EmitConvertToTarget, 1, |
| 10509 | /* 20151*/ OPC_EmitInteger, MVT::i64, 0, |
| 10510 | /* 20154*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 10511 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 10512 | /* 20161*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10513 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 10514 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>) - Complexity = 13 |
| 10515 | // Dst: (ATOMIC_RMW16_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 10516 | /* 20171*/ 0, /*End of Scope*/ |
| 10517 | /* 20172*/ 0, /*End of Scope*/ |
| 10518 | /* 20173*/ /*Scope*/ 56, /*->20230*/ |
| 10519 | /* 20174*/ OPC_CheckChild1Type, MVT::i32, |
| 10520 | /* 20176*/ OPC_MoveChild2, |
| 10521 | /* 20177*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10522 | /* 20180*/ OPC_RecordChild0, // #2 = $val |
| 10523 | /* 20181*/ OPC_MoveParent, |
| 10524 | /* 20182*/ OPC_Scope, 22, /*->20206*/ // 2 children in Scope |
| 10525 | /* 20184*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 10526 | /* 20186*/ OPC_MoveParent, |
| 10527 | /* 20187*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10528 | /* 20189*/ OPC_EmitMergeInputChains1_0, |
| 10529 | /* 20190*/ OPC_EmitInteger, MVT::i32, 0, |
| 10530 | /* 20193*/ OPC_EmitInteger, MVT::i32, 0, |
| 10531 | /* 20196*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10532 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 10533 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>) - Complexity = 10 |
| 10534 | // Dst: (ATOMIC_RMW8_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10535 | /* 20206*/ /*Scope*/ 22, /*->20229*/ |
| 10536 | /* 20207*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 10537 | /* 20209*/ OPC_MoveParent, |
| 10538 | /* 20210*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10539 | /* 20212*/ OPC_EmitMergeInputChains1_0, |
| 10540 | /* 20213*/ OPC_EmitInteger, MVT::i32, 0, |
| 10541 | /* 20216*/ OPC_EmitInteger, MVT::i32, 0, |
| 10542 | /* 20219*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10543 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 10544 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>) - Complexity = 10 |
| 10545 | // Dst: (ATOMIC_RMW16_U_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10546 | /* 20229*/ 0, /*End of Scope*/ |
| 10547 | /* 20230*/ /*Scope*/ 56, /*->20287*/ |
| 10548 | /* 20231*/ OPC_CheckChild1Type, MVT::i64, |
| 10549 | /* 20233*/ OPC_MoveChild2, |
| 10550 | /* 20234*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10551 | /* 20237*/ OPC_RecordChild0, // #2 = $val |
| 10552 | /* 20238*/ OPC_MoveParent, |
| 10553 | /* 20239*/ OPC_Scope, 22, /*->20263*/ // 2 children in Scope |
| 10554 | /* 20241*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 10555 | /* 20243*/ OPC_MoveParent, |
| 10556 | /* 20244*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10557 | /* 20246*/ OPC_EmitMergeInputChains1_0, |
| 10558 | /* 20247*/ OPC_EmitInteger, MVT::i32, 0, |
| 10559 | /* 20250*/ OPC_EmitInteger, MVT::i64, 0, |
| 10560 | /* 20253*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10561 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 10562 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_8>>) - Complexity = 10 |
| 10563 | // Dst: (ATOMIC_RMW8_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10564 | /* 20263*/ /*Scope*/ 22, /*->20286*/ |
| 10565 | /* 20264*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 10566 | /* 20266*/ OPC_MoveParent, |
| 10567 | /* 20267*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10568 | /* 20269*/ OPC_EmitMergeInputChains1_0, |
| 10569 | /* 20270*/ OPC_EmitInteger, MVT::i32, 0, |
| 10570 | /* 20273*/ OPC_EmitInteger, MVT::i64, 0, |
| 10571 | /* 20276*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10572 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 10573 | // Src: (anyext:{ *:[i64] } (atomic_load_or:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_or_16>>) - Complexity = 10 |
| 10574 | // Dst: (ATOMIC_RMW16_U_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10575 | /* 20286*/ 0, /*End of Scope*/ |
| 10576 | /* 20287*/ 0, /*End of Scope*/ |
| 10577 | /* 20288*/ 0, /*End of Scope*/ |
| 10578 | /* 20289*/ /*SwitchOpcode*/ 18|128,5/*658*/, TARGET_VAL(ISD::ATOMIC_LOAD_XOR),// ->20951 |
| 10579 | /* 20293*/ OPC_RecordMemRef, |
| 10580 | /* 20294*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 10581 | /* 20295*/ OPC_Scope, 6|128,3/*390*/, /*->20688*/ // 2 children in Scope |
| 10582 | /* 20298*/ OPC_MoveChild1, |
| 10583 | /* 20299*/ OPC_SwitchOpcode /*3 cases */, 121, TARGET_VAL(ISD::ADD),// ->20424 |
| 10584 | /* 20303*/ OPC_RecordChild0, // #1 = $addr |
| 10585 | /* 20304*/ OPC_RecordChild1, // #2 = $off |
| 10586 | /* 20305*/ OPC_MoveChild1, |
| 10587 | /* 20306*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 10588 | /* 20309*/ OPC_MoveParent, |
| 10589 | /* 20310*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 10590 | /* 20312*/ OPC_SwitchType /*2 cases */, 53, MVT::i32,// ->20368 |
| 10591 | /* 20315*/ OPC_MoveParent, |
| 10592 | /* 20316*/ OPC_MoveChild2, |
| 10593 | /* 20317*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10594 | /* 20320*/ OPC_RecordChild0, // #3 = $val |
| 10595 | /* 20321*/ OPC_MoveParent, |
| 10596 | /* 20322*/ OPC_Scope, 21, /*->20345*/ // 2 children in Scope |
| 10597 | /* 20324*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 10598 | /* 20326*/ OPC_MoveParent, |
| 10599 | /* 20327*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10600 | /* 20329*/ OPC_EmitMergeInputChains1_0, |
| 10601 | /* 20330*/ OPC_EmitInteger, MVT::i32, 0, |
| 10602 | /* 20333*/ OPC_EmitConvertToTarget, 2, |
| 10603 | /* 20335*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10604 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10605 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>) - Complexity = 17 |
| 10606 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10607 | /* 20345*/ /*Scope*/ 21, /*->20367*/ |
| 10608 | /* 20346*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 10609 | /* 20348*/ OPC_MoveParent, |
| 10610 | /* 20349*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10611 | /* 20351*/ OPC_EmitMergeInputChains1_0, |
| 10612 | /* 20352*/ OPC_EmitInteger, MVT::i32, 0, |
| 10613 | /* 20355*/ OPC_EmitConvertToTarget, 2, |
| 10614 | /* 20357*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10615 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10616 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>) - Complexity = 17 |
| 10617 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10618 | /* 20367*/ 0, /*End of Scope*/ |
| 10619 | /* 20368*/ /*SwitchType*/ 53, MVT::i64,// ->20423 |
| 10620 | /* 20370*/ OPC_MoveParent, |
| 10621 | /* 20371*/ OPC_MoveChild2, |
| 10622 | /* 20372*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10623 | /* 20375*/ OPC_RecordChild0, // #3 = $val |
| 10624 | /* 20376*/ OPC_MoveParent, |
| 10625 | /* 20377*/ OPC_Scope, 21, /*->20400*/ // 2 children in Scope |
| 10626 | /* 20379*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 10627 | /* 20381*/ OPC_MoveParent, |
| 10628 | /* 20382*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10629 | /* 20384*/ OPC_EmitMergeInputChains1_0, |
| 10630 | /* 20385*/ OPC_EmitInteger, MVT::i32, 0, |
| 10631 | /* 20388*/ OPC_EmitConvertToTarget, 2, |
| 10632 | /* 20390*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10633 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10634 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>) - Complexity = 17 |
| 10635 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10636 | /* 20400*/ /*Scope*/ 21, /*->20422*/ |
| 10637 | /* 20401*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 10638 | /* 20403*/ OPC_MoveParent, |
| 10639 | /* 20404*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10640 | /* 20406*/ OPC_EmitMergeInputChains1_0, |
| 10641 | /* 20407*/ OPC_EmitInteger, MVT::i32, 0, |
| 10642 | /* 20410*/ OPC_EmitConvertToTarget, 2, |
| 10643 | /* 20412*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10644 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10645 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>) - Complexity = 17 |
| 10646 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10647 | /* 20422*/ 0, /*End of Scope*/ |
| 10648 | /* 20423*/ 0, // EndSwitchType |
| 10649 | /* 20424*/ /*SwitchOpcode*/ 121, TARGET_VAL(ISD::OR),// ->20548 |
| 10650 | /* 20427*/ OPC_RecordChild0, // #1 = $addr |
| 10651 | /* 20428*/ OPC_RecordChild1, // #2 = $off |
| 10652 | /* 20429*/ OPC_MoveChild1, |
| 10653 | /* 20430*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 10654 | /* 20433*/ OPC_MoveParent, |
| 10655 | /* 20434*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 10656 | /* 20436*/ OPC_SwitchType /*2 cases */, 53, MVT::i32,// ->20492 |
| 10657 | /* 20439*/ OPC_MoveParent, |
| 10658 | /* 20440*/ OPC_MoveChild2, |
| 10659 | /* 20441*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10660 | /* 20444*/ OPC_RecordChild0, // #3 = $val |
| 10661 | /* 20445*/ OPC_MoveParent, |
| 10662 | /* 20446*/ OPC_Scope, 21, /*->20469*/ // 2 children in Scope |
| 10663 | /* 20448*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 10664 | /* 20450*/ OPC_MoveParent, |
| 10665 | /* 20451*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10666 | /* 20453*/ OPC_EmitMergeInputChains1_0, |
| 10667 | /* 20454*/ OPC_EmitInteger, MVT::i32, 0, |
| 10668 | /* 20457*/ OPC_EmitConvertToTarget, 2, |
| 10669 | /* 20459*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10670 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10671 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>) - Complexity = 17 |
| 10672 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10673 | /* 20469*/ /*Scope*/ 21, /*->20491*/ |
| 10674 | /* 20470*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 10675 | /* 20472*/ OPC_MoveParent, |
| 10676 | /* 20473*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10677 | /* 20475*/ OPC_EmitMergeInputChains1_0, |
| 10678 | /* 20476*/ OPC_EmitInteger, MVT::i32, 0, |
| 10679 | /* 20479*/ OPC_EmitConvertToTarget, 2, |
| 10680 | /* 20481*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10681 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10682 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>) - Complexity = 17 |
| 10683 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10684 | /* 20491*/ 0, /*End of Scope*/ |
| 10685 | /* 20492*/ /*SwitchType*/ 53, MVT::i64,// ->20547 |
| 10686 | /* 20494*/ OPC_MoveParent, |
| 10687 | /* 20495*/ OPC_MoveChild2, |
| 10688 | /* 20496*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10689 | /* 20499*/ OPC_RecordChild0, // #3 = $val |
| 10690 | /* 20500*/ OPC_MoveParent, |
| 10691 | /* 20501*/ OPC_Scope, 21, /*->20524*/ // 2 children in Scope |
| 10692 | /* 20503*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 10693 | /* 20505*/ OPC_MoveParent, |
| 10694 | /* 20506*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10695 | /* 20508*/ OPC_EmitMergeInputChains1_0, |
| 10696 | /* 20509*/ OPC_EmitInteger, MVT::i32, 0, |
| 10697 | /* 20512*/ OPC_EmitConvertToTarget, 2, |
| 10698 | /* 20514*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10699 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10700 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>) - Complexity = 17 |
| 10701 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10702 | /* 20524*/ /*Scope*/ 21, /*->20546*/ |
| 10703 | /* 20525*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 10704 | /* 20527*/ OPC_MoveParent, |
| 10705 | /* 20528*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10706 | /* 20530*/ OPC_EmitMergeInputChains1_0, |
| 10707 | /* 20531*/ OPC_EmitInteger, MVT::i32, 0, |
| 10708 | /* 20534*/ OPC_EmitConvertToTarget, 2, |
| 10709 | /* 20536*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10710 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10711 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>) - Complexity = 17 |
| 10712 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10713 | /* 20546*/ 0, /*End of Scope*/ |
| 10714 | /* 20547*/ 0, // EndSwitchType |
| 10715 | /* 20548*/ /*SwitchOpcode*/ 7|128,1/*135*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->20687 |
| 10716 | /* 20552*/ OPC_RecordChild0, // #1 = $off |
| 10717 | /* 20553*/ OPC_MoveChild0, |
| 10718 | /* 20554*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 10719 | /* 20557*/ OPC_MoveParent, |
| 10720 | /* 20558*/ OPC_MoveParent, |
| 10721 | /* 20559*/ OPC_MoveChild2, |
| 10722 | /* 20560*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10723 | /* 20563*/ OPC_RecordChild0, // #2 = $val |
| 10724 | /* 20564*/ OPC_MoveParent, |
| 10725 | /* 20565*/ OPC_Scope, 59, /*->20626*/ // 2 children in Scope |
| 10726 | /* 20567*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 10727 | /* 20569*/ OPC_MoveParent, |
| 10728 | /* 20570*/ OPC_Scope, 26, /*->20598*/ // 2 children in Scope |
| 10729 | /* 20572*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 10730 | /* 20574*/ OPC_EmitMergeInputChains1_0, |
| 10731 | /* 20575*/ OPC_EmitInteger, MVT::i32, 0, |
| 10732 | /* 20578*/ OPC_EmitInteger, MVT::i32, 0, |
| 10733 | /* 20581*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 10734 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 10735 | /* 20588*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10736 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 10737 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>) - Complexity = 16 |
| 10738 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 10739 | /* 20598*/ /*Scope*/ 26, /*->20625*/ |
| 10740 | /* 20599*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 10741 | /* 20601*/ OPC_EmitMergeInputChains1_0, |
| 10742 | /* 20602*/ OPC_EmitInteger, MVT::i32, 0, |
| 10743 | /* 20605*/ OPC_EmitInteger, MVT::i64, 0, |
| 10744 | /* 20608*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 10745 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 10746 | /* 20615*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10747 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 10748 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>) - Complexity = 16 |
| 10749 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 10750 | /* 20625*/ 0, /*End of Scope*/ |
| 10751 | /* 20626*/ /*Scope*/ 59, /*->20686*/ |
| 10752 | /* 20627*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 10753 | /* 20629*/ OPC_MoveParent, |
| 10754 | /* 20630*/ OPC_Scope, 26, /*->20658*/ // 2 children in Scope |
| 10755 | /* 20632*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 10756 | /* 20634*/ OPC_EmitMergeInputChains1_0, |
| 10757 | /* 20635*/ OPC_EmitInteger, MVT::i32, 0, |
| 10758 | /* 20638*/ OPC_EmitInteger, MVT::i32, 0, |
| 10759 | /* 20641*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 10760 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 10761 | /* 20648*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10762 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 10763 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>) - Complexity = 16 |
| 10764 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 10765 | /* 20658*/ /*Scope*/ 26, /*->20685*/ |
| 10766 | /* 20659*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 10767 | /* 20661*/ OPC_EmitMergeInputChains1_0, |
| 10768 | /* 20662*/ OPC_EmitInteger, MVT::i32, 0, |
| 10769 | /* 20665*/ OPC_EmitInteger, MVT::i64, 0, |
| 10770 | /* 20668*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 10771 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 10772 | /* 20675*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10773 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 10774 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>) - Complexity = 16 |
| 10775 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 10776 | /* 20685*/ 0, /*End of Scope*/ |
| 10777 | /* 20686*/ 0, /*End of Scope*/ |
| 10778 | /* 20687*/ 0, // EndSwitchOpcode |
| 10779 | /* 20688*/ /*Scope*/ 4|128,2/*260*/, /*->20950*/ |
| 10780 | /* 20690*/ OPC_RecordChild1, // #1 = $off |
| 10781 | /* 20691*/ OPC_Scope, 13|128,1/*141*/, /*->20835*/ // 3 children in Scope |
| 10782 | /* 20694*/ OPC_MoveChild1, |
| 10783 | /* 20695*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 10784 | /* 20698*/ OPC_MoveParent, |
| 10785 | /* 20699*/ OPC_MoveChild2, |
| 10786 | /* 20700*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10787 | /* 20703*/ OPC_RecordChild0, // #2 = $val |
| 10788 | /* 20704*/ OPC_MoveParent, |
| 10789 | /* 20705*/ OPC_Scope, 63, /*->20770*/ // 2 children in Scope |
| 10790 | /* 20707*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 10791 | /* 20709*/ OPC_MoveParent, |
| 10792 | /* 20710*/ OPC_Scope, 28, /*->20740*/ // 2 children in Scope |
| 10793 | /* 20712*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10794 | /* 20714*/ OPC_EmitMergeInputChains1_0, |
| 10795 | /* 20715*/ OPC_EmitInteger, MVT::i32, 0, |
| 10796 | /* 20718*/ OPC_EmitConvertToTarget, 1, |
| 10797 | /* 20720*/ OPC_EmitInteger, MVT::i32, 0, |
| 10798 | /* 20723*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 10799 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 10800 | /* 20730*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10801 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 10802 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>) - Complexity = 13 |
| 10803 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 10804 | /* 20740*/ /*Scope*/ 28, /*->20769*/ |
| 10805 | /* 20741*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10806 | /* 20743*/ OPC_EmitMergeInputChains1_0, |
| 10807 | /* 20744*/ OPC_EmitInteger, MVT::i32, 0, |
| 10808 | /* 20747*/ OPC_EmitConvertToTarget, 1, |
| 10809 | /* 20749*/ OPC_EmitInteger, MVT::i64, 0, |
| 10810 | /* 20752*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 10811 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 10812 | /* 20759*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10813 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 10814 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>) - Complexity = 13 |
| 10815 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 10816 | /* 20769*/ 0, /*End of Scope*/ |
| 10817 | /* 20770*/ /*Scope*/ 63, /*->20834*/ |
| 10818 | /* 20771*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 10819 | /* 20773*/ OPC_MoveParent, |
| 10820 | /* 20774*/ OPC_Scope, 28, /*->20804*/ // 2 children in Scope |
| 10821 | /* 20776*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10822 | /* 20778*/ OPC_EmitMergeInputChains1_0, |
| 10823 | /* 20779*/ OPC_EmitInteger, MVT::i32, 0, |
| 10824 | /* 20782*/ OPC_EmitConvertToTarget, 1, |
| 10825 | /* 20784*/ OPC_EmitInteger, MVT::i32, 0, |
| 10826 | /* 20787*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 10827 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 10828 | /* 20794*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10829 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 10830 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>) - Complexity = 13 |
| 10831 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 10832 | /* 20804*/ /*Scope*/ 28, /*->20833*/ |
| 10833 | /* 20805*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10834 | /* 20807*/ OPC_EmitMergeInputChains1_0, |
| 10835 | /* 20808*/ OPC_EmitInteger, MVT::i32, 0, |
| 10836 | /* 20811*/ OPC_EmitConvertToTarget, 1, |
| 10837 | /* 20813*/ OPC_EmitInteger, MVT::i64, 0, |
| 10838 | /* 20816*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 10839 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 10840 | /* 20823*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10841 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 10842 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>) - Complexity = 13 |
| 10843 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 10844 | /* 20833*/ 0, /*End of Scope*/ |
| 10845 | /* 20834*/ 0, /*End of Scope*/ |
| 10846 | /* 20835*/ /*Scope*/ 56, /*->20892*/ |
| 10847 | /* 20836*/ OPC_CheckChild1Type, MVT::i32, |
| 10848 | /* 20838*/ OPC_MoveChild2, |
| 10849 | /* 20839*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10850 | /* 20842*/ OPC_RecordChild0, // #2 = $val |
| 10851 | /* 20843*/ OPC_MoveParent, |
| 10852 | /* 20844*/ OPC_Scope, 22, /*->20868*/ // 2 children in Scope |
| 10853 | /* 20846*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 10854 | /* 20848*/ OPC_MoveParent, |
| 10855 | /* 20849*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10856 | /* 20851*/ OPC_EmitMergeInputChains1_0, |
| 10857 | /* 20852*/ OPC_EmitInteger, MVT::i32, 0, |
| 10858 | /* 20855*/ OPC_EmitInteger, MVT::i32, 0, |
| 10859 | /* 20858*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10860 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 10861 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>) - Complexity = 10 |
| 10862 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10863 | /* 20868*/ /*Scope*/ 22, /*->20891*/ |
| 10864 | /* 20869*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 10865 | /* 20871*/ OPC_MoveParent, |
| 10866 | /* 20872*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10867 | /* 20874*/ OPC_EmitMergeInputChains1_0, |
| 10868 | /* 20875*/ OPC_EmitInteger, MVT::i32, 0, |
| 10869 | /* 20878*/ OPC_EmitInteger, MVT::i32, 0, |
| 10870 | /* 20881*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10871 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 10872 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>) - Complexity = 10 |
| 10873 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10874 | /* 20891*/ 0, /*End of Scope*/ |
| 10875 | /* 20892*/ /*Scope*/ 56, /*->20949*/ |
| 10876 | /* 20893*/ OPC_CheckChild1Type, MVT::i64, |
| 10877 | /* 20895*/ OPC_MoveChild2, |
| 10878 | /* 20896*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10879 | /* 20899*/ OPC_RecordChild0, // #2 = $val |
| 10880 | /* 20900*/ OPC_MoveParent, |
| 10881 | /* 20901*/ OPC_Scope, 22, /*->20925*/ // 2 children in Scope |
| 10882 | /* 20903*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 10883 | /* 20905*/ OPC_MoveParent, |
| 10884 | /* 20906*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10885 | /* 20908*/ OPC_EmitMergeInputChains1_0, |
| 10886 | /* 20909*/ OPC_EmitInteger, MVT::i32, 0, |
| 10887 | /* 20912*/ OPC_EmitInteger, MVT::i64, 0, |
| 10888 | /* 20915*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10889 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 10890 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_8>>) - Complexity = 10 |
| 10891 | // Dst: (ATOMIC_RMW8_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10892 | /* 20925*/ /*Scope*/ 22, /*->20948*/ |
| 10893 | /* 20926*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 10894 | /* 20928*/ OPC_MoveParent, |
| 10895 | /* 20929*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10896 | /* 20931*/ OPC_EmitMergeInputChains1_0, |
| 10897 | /* 20932*/ OPC_EmitInteger, MVT::i32, 0, |
| 10898 | /* 20935*/ OPC_EmitInteger, MVT::i64, 0, |
| 10899 | /* 20938*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10900 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 10901 | // Src: (anyext:{ *:[i64] } (atomic_load_xor:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_load_xor_16>>) - Complexity = 10 |
| 10902 | // Dst: (ATOMIC_RMW16_U_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10903 | /* 20948*/ 0, /*End of Scope*/ |
| 10904 | /* 20949*/ 0, /*End of Scope*/ |
| 10905 | /* 20950*/ 0, /*End of Scope*/ |
| 10906 | /* 20951*/ /*SwitchOpcode*/ 18|128,5/*658*/, TARGET_VAL(ISD::ATOMIC_SWAP),// ->21613 |
| 10907 | /* 20955*/ OPC_RecordMemRef, |
| 10908 | /* 20956*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 10909 | /* 20957*/ OPC_Scope, 6|128,3/*390*/, /*->21350*/ // 2 children in Scope |
| 10910 | /* 20960*/ OPC_MoveChild1, |
| 10911 | /* 20961*/ OPC_SwitchOpcode /*3 cases */, 121, TARGET_VAL(ISD::ADD),// ->21086 |
| 10912 | /* 20965*/ OPC_RecordChild0, // #1 = $addr |
| 10913 | /* 20966*/ OPC_RecordChild1, // #2 = $off |
| 10914 | /* 20967*/ OPC_MoveChild1, |
| 10915 | /* 20968*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 10916 | /* 20971*/ OPC_MoveParent, |
| 10917 | /* 20972*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 10918 | /* 20974*/ OPC_SwitchType /*2 cases */, 53, MVT::i32,// ->21030 |
| 10919 | /* 20977*/ OPC_MoveParent, |
| 10920 | /* 20978*/ OPC_MoveChild2, |
| 10921 | /* 20979*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10922 | /* 20982*/ OPC_RecordChild0, // #3 = $val |
| 10923 | /* 20983*/ OPC_MoveParent, |
| 10924 | /* 20984*/ OPC_Scope, 21, /*->21007*/ // 2 children in Scope |
| 10925 | /* 20986*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 10926 | /* 20988*/ OPC_MoveParent, |
| 10927 | /* 20989*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10928 | /* 20991*/ OPC_EmitMergeInputChains1_0, |
| 10929 | /* 20992*/ OPC_EmitInteger, MVT::i32, 0, |
| 10930 | /* 20995*/ OPC_EmitConvertToTarget, 2, |
| 10931 | /* 20997*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10932 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10933 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>) - Complexity = 17 |
| 10934 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10935 | /* 21007*/ /*Scope*/ 21, /*->21029*/ |
| 10936 | /* 21008*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 10937 | /* 21010*/ OPC_MoveParent, |
| 10938 | /* 21011*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10939 | /* 21013*/ OPC_EmitMergeInputChains1_0, |
| 10940 | /* 21014*/ OPC_EmitInteger, MVT::i32, 0, |
| 10941 | /* 21017*/ OPC_EmitConvertToTarget, 2, |
| 10942 | /* 21019*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10943 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10944 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>) - Complexity = 17 |
| 10945 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 10946 | /* 21029*/ 0, /*End of Scope*/ |
| 10947 | /* 21030*/ /*SwitchType*/ 53, MVT::i64,// ->21085 |
| 10948 | /* 21032*/ OPC_MoveParent, |
| 10949 | /* 21033*/ OPC_MoveChild2, |
| 10950 | /* 21034*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10951 | /* 21037*/ OPC_RecordChild0, // #3 = $val |
| 10952 | /* 21038*/ OPC_MoveParent, |
| 10953 | /* 21039*/ OPC_Scope, 21, /*->21062*/ // 2 children in Scope |
| 10954 | /* 21041*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 10955 | /* 21043*/ OPC_MoveParent, |
| 10956 | /* 21044*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10957 | /* 21046*/ OPC_EmitMergeInputChains1_0, |
| 10958 | /* 21047*/ OPC_EmitInteger, MVT::i32, 0, |
| 10959 | /* 21050*/ OPC_EmitConvertToTarget, 2, |
| 10960 | /* 21052*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10961 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10962 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>) - Complexity = 17 |
| 10963 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10964 | /* 21062*/ /*Scope*/ 21, /*->21084*/ |
| 10965 | /* 21063*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 10966 | /* 21065*/ OPC_MoveParent, |
| 10967 | /* 21066*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10968 | /* 21068*/ OPC_EmitMergeInputChains1_0, |
| 10969 | /* 21069*/ OPC_EmitInteger, MVT::i32, 0, |
| 10970 | /* 21072*/ OPC_EmitConvertToTarget, 2, |
| 10971 | /* 21074*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 10972 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10973 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>) - Complexity = 17 |
| 10974 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 10975 | /* 21084*/ 0, /*End of Scope*/ |
| 10976 | /* 21085*/ 0, // EndSwitchType |
| 10977 | /* 21086*/ /*SwitchOpcode*/ 121, TARGET_VAL(ISD::OR),// ->21210 |
| 10978 | /* 21089*/ OPC_RecordChild0, // #1 = $addr |
| 10979 | /* 21090*/ OPC_RecordChild1, // #2 = $off |
| 10980 | /* 21091*/ OPC_MoveChild1, |
| 10981 | /* 21092*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 10982 | /* 21095*/ OPC_MoveParent, |
| 10983 | /* 21096*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 10984 | /* 21098*/ OPC_SwitchType /*2 cases */, 53, MVT::i32,// ->21154 |
| 10985 | /* 21101*/ OPC_MoveParent, |
| 10986 | /* 21102*/ OPC_MoveChild2, |
| 10987 | /* 21103*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 10988 | /* 21106*/ OPC_RecordChild0, // #3 = $val |
| 10989 | /* 21107*/ OPC_MoveParent, |
| 10990 | /* 21108*/ OPC_Scope, 21, /*->21131*/ // 2 children in Scope |
| 10991 | /* 21110*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 10992 | /* 21112*/ OPC_MoveParent, |
| 10993 | /* 21113*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 10994 | /* 21115*/ OPC_EmitMergeInputChains1_0, |
| 10995 | /* 21116*/ OPC_EmitInteger, MVT::i32, 0, |
| 10996 | /* 21119*/ OPC_EmitConvertToTarget, 2, |
| 10997 | /* 21121*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 10998 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 10999 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>) - Complexity = 17 |
| 11000 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 11001 | /* 21131*/ /*Scope*/ 21, /*->21153*/ |
| 11002 | /* 21132*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 11003 | /* 21134*/ OPC_MoveParent, |
| 11004 | /* 21135*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 11005 | /* 21137*/ OPC_EmitMergeInputChains1_0, |
| 11006 | /* 21138*/ OPC_EmitInteger, MVT::i32, 0, |
| 11007 | /* 21141*/ OPC_EmitConvertToTarget, 2, |
| 11008 | /* 21143*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11009 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 11010 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>) - Complexity = 17 |
| 11011 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 11012 | /* 21153*/ 0, /*End of Scope*/ |
| 11013 | /* 21154*/ /*SwitchType*/ 53, MVT::i64,// ->21209 |
| 11014 | /* 21156*/ OPC_MoveParent, |
| 11015 | /* 21157*/ OPC_MoveChild2, |
| 11016 | /* 21158*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 11017 | /* 21161*/ OPC_RecordChild0, // #3 = $val |
| 11018 | /* 21162*/ OPC_MoveParent, |
| 11019 | /* 21163*/ OPC_Scope, 21, /*->21186*/ // 2 children in Scope |
| 11020 | /* 21165*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 11021 | /* 21167*/ OPC_MoveParent, |
| 11022 | /* 21168*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 11023 | /* 21170*/ OPC_EmitMergeInputChains1_0, |
| 11024 | /* 21171*/ OPC_EmitInteger, MVT::i32, 0, |
| 11025 | /* 21174*/ OPC_EmitConvertToTarget, 2, |
| 11026 | /* 21176*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11027 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 11028 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>) - Complexity = 17 |
| 11029 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 11030 | /* 21186*/ /*Scope*/ 21, /*->21208*/ |
| 11031 | /* 21187*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 11032 | /* 21189*/ OPC_MoveParent, |
| 11033 | /* 21190*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 11034 | /* 21192*/ OPC_EmitMergeInputChains1_0, |
| 11035 | /* 21193*/ OPC_EmitInteger, MVT::i32, 0, |
| 11036 | /* 21196*/ OPC_EmitConvertToTarget, 2, |
| 11037 | /* 21198*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11038 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 11039 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>) - Complexity = 17 |
| 11040 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 11041 | /* 21208*/ 0, /*End of Scope*/ |
| 11042 | /* 21209*/ 0, // EndSwitchType |
| 11043 | /* 21210*/ /*SwitchOpcode*/ 7|128,1/*135*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->21349 |
| 11044 | /* 21214*/ OPC_RecordChild0, // #1 = $off |
| 11045 | /* 21215*/ OPC_MoveChild0, |
| 11046 | /* 21216*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 11047 | /* 21219*/ OPC_MoveParent, |
| 11048 | /* 21220*/ OPC_MoveParent, |
| 11049 | /* 21221*/ OPC_MoveChild2, |
| 11050 | /* 21222*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 11051 | /* 21225*/ OPC_RecordChild0, // #2 = $val |
| 11052 | /* 21226*/ OPC_MoveParent, |
| 11053 | /* 21227*/ OPC_Scope, 59, /*->21288*/ // 2 children in Scope |
| 11054 | /* 21229*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 11055 | /* 21231*/ OPC_MoveParent, |
| 11056 | /* 21232*/ OPC_Scope, 26, /*->21260*/ // 2 children in Scope |
| 11057 | /* 21234*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 11058 | /* 21236*/ OPC_EmitMergeInputChains1_0, |
| 11059 | /* 21237*/ OPC_EmitInteger, MVT::i32, 0, |
| 11060 | /* 21240*/ OPC_EmitInteger, MVT::i32, 0, |
| 11061 | /* 21243*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 11062 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 11063 | /* 21250*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11064 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 11065 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>) - Complexity = 16 |
| 11066 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 11067 | /* 21260*/ /*Scope*/ 26, /*->21287*/ |
| 11068 | /* 21261*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 11069 | /* 21263*/ OPC_EmitMergeInputChains1_0, |
| 11070 | /* 21264*/ OPC_EmitInteger, MVT::i32, 0, |
| 11071 | /* 21267*/ OPC_EmitInteger, MVT::i64, 0, |
| 11072 | /* 21270*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 11073 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 11074 | /* 21277*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11075 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 11076 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>) - Complexity = 16 |
| 11077 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 11078 | /* 21287*/ 0, /*End of Scope*/ |
| 11079 | /* 21288*/ /*Scope*/ 59, /*->21348*/ |
| 11080 | /* 21289*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 11081 | /* 21291*/ OPC_MoveParent, |
| 11082 | /* 21292*/ OPC_Scope, 26, /*->21320*/ // 2 children in Scope |
| 11083 | /* 21294*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 11084 | /* 21296*/ OPC_EmitMergeInputChains1_0, |
| 11085 | /* 21297*/ OPC_EmitInteger, MVT::i32, 0, |
| 11086 | /* 21300*/ OPC_EmitInteger, MVT::i32, 0, |
| 11087 | /* 21303*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 11088 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 11089 | /* 21310*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11090 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 11091 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>) - Complexity = 16 |
| 11092 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 11093 | /* 21320*/ /*Scope*/ 26, /*->21347*/ |
| 11094 | /* 21321*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 11095 | /* 21323*/ OPC_EmitMergeInputChains1_0, |
| 11096 | /* 21324*/ OPC_EmitInteger, MVT::i32, 0, |
| 11097 | /* 21327*/ OPC_EmitInteger, MVT::i64, 0, |
| 11098 | /* 21330*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 11099 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 11100 | /* 21337*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11101 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 11102 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>) - Complexity = 16 |
| 11103 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 11104 | /* 21347*/ 0, /*End of Scope*/ |
| 11105 | /* 21348*/ 0, /*End of Scope*/ |
| 11106 | /* 21349*/ 0, // EndSwitchOpcode |
| 11107 | /* 21350*/ /*Scope*/ 4|128,2/*260*/, /*->21612*/ |
| 11108 | /* 21352*/ OPC_RecordChild1, // #1 = $off |
| 11109 | /* 21353*/ OPC_Scope, 13|128,1/*141*/, /*->21497*/ // 3 children in Scope |
| 11110 | /* 21356*/ OPC_MoveChild1, |
| 11111 | /* 21357*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 11112 | /* 21360*/ OPC_MoveParent, |
| 11113 | /* 21361*/ OPC_MoveChild2, |
| 11114 | /* 21362*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 11115 | /* 21365*/ OPC_RecordChild0, // #2 = $val |
| 11116 | /* 21366*/ OPC_MoveParent, |
| 11117 | /* 21367*/ OPC_Scope, 63, /*->21432*/ // 2 children in Scope |
| 11118 | /* 21369*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 11119 | /* 21371*/ OPC_MoveParent, |
| 11120 | /* 21372*/ OPC_Scope, 28, /*->21402*/ // 2 children in Scope |
| 11121 | /* 21374*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 11122 | /* 21376*/ OPC_EmitMergeInputChains1_0, |
| 11123 | /* 21377*/ OPC_EmitInteger, MVT::i32, 0, |
| 11124 | /* 21380*/ OPC_EmitConvertToTarget, 1, |
| 11125 | /* 21382*/ OPC_EmitInteger, MVT::i32, 0, |
| 11126 | /* 21385*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 11127 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 11128 | /* 21392*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11129 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 11130 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>) - Complexity = 13 |
| 11131 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 11132 | /* 21402*/ /*Scope*/ 28, /*->21431*/ |
| 11133 | /* 21403*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 11134 | /* 21405*/ OPC_EmitMergeInputChains1_0, |
| 11135 | /* 21406*/ OPC_EmitInteger, MVT::i32, 0, |
| 11136 | /* 21409*/ OPC_EmitConvertToTarget, 1, |
| 11137 | /* 21411*/ OPC_EmitInteger, MVT::i64, 0, |
| 11138 | /* 21414*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 11139 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 11140 | /* 21421*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11141 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 11142 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>) - Complexity = 13 |
| 11143 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 11144 | /* 21431*/ 0, /*End of Scope*/ |
| 11145 | /* 21432*/ /*Scope*/ 63, /*->21496*/ |
| 11146 | /* 21433*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 11147 | /* 21435*/ OPC_MoveParent, |
| 11148 | /* 21436*/ OPC_Scope, 28, /*->21466*/ // 2 children in Scope |
| 11149 | /* 21438*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 11150 | /* 21440*/ OPC_EmitMergeInputChains1_0, |
| 11151 | /* 21441*/ OPC_EmitInteger, MVT::i32, 0, |
| 11152 | /* 21444*/ OPC_EmitConvertToTarget, 1, |
| 11153 | /* 21446*/ OPC_EmitInteger, MVT::i32, 0, |
| 11154 | /* 21449*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 11155 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 11156 | /* 21456*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11157 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 11158 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>) - Complexity = 13 |
| 11159 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 11160 | /* 21466*/ /*Scope*/ 28, /*->21495*/ |
| 11161 | /* 21467*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 11162 | /* 21469*/ OPC_EmitMergeInputChains1_0, |
| 11163 | /* 21470*/ OPC_EmitInteger, MVT::i32, 0, |
| 11164 | /* 21473*/ OPC_EmitConvertToTarget, 1, |
| 11165 | /* 21475*/ OPC_EmitInteger, MVT::i64, 0, |
| 11166 | /* 21478*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 11167 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 11168 | /* 21485*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11169 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 11170 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>) - Complexity = 13 |
| 11171 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 11172 | /* 21495*/ 0, /*End of Scope*/ |
| 11173 | /* 21496*/ 0, /*End of Scope*/ |
| 11174 | /* 21497*/ /*Scope*/ 56, /*->21554*/ |
| 11175 | /* 21498*/ OPC_CheckChild1Type, MVT::i32, |
| 11176 | /* 21500*/ OPC_MoveChild2, |
| 11177 | /* 21501*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 11178 | /* 21504*/ OPC_RecordChild0, // #2 = $val |
| 11179 | /* 21505*/ OPC_MoveParent, |
| 11180 | /* 21506*/ OPC_Scope, 22, /*->21530*/ // 2 children in Scope |
| 11181 | /* 21508*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 11182 | /* 21510*/ OPC_MoveParent, |
| 11183 | /* 21511*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 11184 | /* 21513*/ OPC_EmitMergeInputChains1_0, |
| 11185 | /* 21514*/ OPC_EmitInteger, MVT::i32, 0, |
| 11186 | /* 21517*/ OPC_EmitInteger, MVT::i32, 0, |
| 11187 | /* 21520*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11188 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 11189 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>) - Complexity = 10 |
| 11190 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 11191 | /* 21530*/ /*Scope*/ 22, /*->21553*/ |
| 11192 | /* 21531*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 11193 | /* 21533*/ OPC_MoveParent, |
| 11194 | /* 21534*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 11195 | /* 21536*/ OPC_EmitMergeInputChains1_0, |
| 11196 | /* 21537*/ OPC_EmitInteger, MVT::i32, 0, |
| 11197 | /* 21540*/ OPC_EmitInteger, MVT::i32, 0, |
| 11198 | /* 21543*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11199 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 11200 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>) - Complexity = 10 |
| 11201 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 11202 | /* 21553*/ 0, /*End of Scope*/ |
| 11203 | /* 21554*/ /*Scope*/ 56, /*->21611*/ |
| 11204 | /* 21555*/ OPC_CheckChild1Type, MVT::i64, |
| 11205 | /* 21557*/ OPC_MoveChild2, |
| 11206 | /* 21558*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 11207 | /* 21561*/ OPC_RecordChild0, // #2 = $val |
| 11208 | /* 21562*/ OPC_MoveParent, |
| 11209 | /* 21563*/ OPC_Scope, 22, /*->21587*/ // 2 children in Scope |
| 11210 | /* 21565*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 11211 | /* 21567*/ OPC_MoveParent, |
| 11212 | /* 21568*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 11213 | /* 21570*/ OPC_EmitMergeInputChains1_0, |
| 11214 | /* 21571*/ OPC_EmitInteger, MVT::i32, 0, |
| 11215 | /* 21574*/ OPC_EmitInteger, MVT::i64, 0, |
| 11216 | /* 21577*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11217 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 11218 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_8>>) - Complexity = 10 |
| 11219 | // Dst: (ATOMIC_RMW8_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 11220 | /* 21587*/ /*Scope*/ 22, /*->21610*/ |
| 11221 | /* 21588*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 11222 | /* 21590*/ OPC_MoveParent, |
| 11223 | /* 21591*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 11224 | /* 21593*/ OPC_EmitMergeInputChains1_0, |
| 11225 | /* 21594*/ OPC_EmitInteger, MVT::i32, 0, |
| 11226 | /* 21597*/ OPC_EmitInteger, MVT::i64, 0, |
| 11227 | /* 21600*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11228 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 11229 | // Src: (anyext:{ *:[i64] } (atomic_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_swap_16>>) - Complexity = 10 |
| 11230 | // Dst: (ATOMIC_RMW16_U_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 11231 | /* 21610*/ 0, /*End of Scope*/ |
| 11232 | /* 21611*/ 0, /*End of Scope*/ |
| 11233 | /* 21612*/ 0, /*End of Scope*/ |
| 11234 | /* 21613*/ /*SwitchOpcode*/ 77|128,4/*589*/, TARGET_VAL(ISD::ATOMIC_LOAD),// ->22206 |
| 11235 | /* 21617*/ OPC_RecordMemRef, |
| 11236 | /* 21618*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 11237 | /* 21619*/ OPC_Scope, 91|128,2/*347*/, /*->21969*/ // 2 children in Scope |
| 11238 | /* 21622*/ OPC_MoveChild1, |
| 11239 | /* 21623*/ OPC_SwitchOpcode /*3 cases */, 105, TARGET_VAL(ISD::ADD),// ->21732 |
| 11240 | /* 21627*/ OPC_RecordChild0, // #1 = $addr |
| 11241 | /* 21628*/ OPC_RecordChild1, // #2 = $off |
| 11242 | /* 21629*/ OPC_MoveChild1, |
| 11243 | /* 21630*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 11244 | /* 21633*/ OPC_MoveParent, |
| 11245 | /* 21634*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 11246 | /* 21636*/ OPC_SwitchType /*2 cases */, 45, MVT::i32,// ->21684 |
| 11247 | /* 21639*/ OPC_MoveParent, |
| 11248 | /* 21640*/ OPC_Scope, 20, /*->21662*/ // 2 children in Scope |
| 11249 | /* 21642*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 11250 | /* 21644*/ OPC_MoveParent, |
| 11251 | /* 21645*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 11252 | /* 21647*/ OPC_EmitMergeInputChains1_0, |
| 11253 | /* 21648*/ OPC_EmitInteger, MVT::i32, 0, |
| 11254 | /* 21651*/ OPC_EmitConvertToTarget, 2, |
| 11255 | /* 21653*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11256 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 11257 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_8>>) - Complexity = 14 |
| 11258 | // Dst: (ATOMIC_LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 11259 | /* 21662*/ /*Scope*/ 20, /*->21683*/ |
| 11260 | /* 21663*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 11261 | /* 21665*/ OPC_MoveParent, |
| 11262 | /* 21666*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 11263 | /* 21668*/ OPC_EmitMergeInputChains1_0, |
| 11264 | /* 21669*/ OPC_EmitInteger, MVT::i32, 0, |
| 11265 | /* 21672*/ OPC_EmitConvertToTarget, 2, |
| 11266 | /* 21674*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11267 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 11268 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_16>>) - Complexity = 14 |
| 11269 | // Dst: (ATOMIC_LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 11270 | /* 21683*/ 0, /*End of Scope*/ |
| 11271 | /* 21684*/ /*SwitchType*/ 45, MVT::i64,// ->21731 |
| 11272 | /* 21686*/ OPC_MoveParent, |
| 11273 | /* 21687*/ OPC_Scope, 20, /*->21709*/ // 2 children in Scope |
| 11274 | /* 21689*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 11275 | /* 21691*/ OPC_MoveParent, |
| 11276 | /* 21692*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 11277 | /* 21694*/ OPC_EmitMergeInputChains1_0, |
| 11278 | /* 21695*/ OPC_EmitInteger, MVT::i32, 0, |
| 11279 | /* 21698*/ OPC_EmitConvertToTarget, 2, |
| 11280 | /* 21700*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11281 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 11282 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_8>>) - Complexity = 14 |
| 11283 | // Dst: (ATOMIC_LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 11284 | /* 21709*/ /*Scope*/ 20, /*->21730*/ |
| 11285 | /* 21710*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 11286 | /* 21712*/ OPC_MoveParent, |
| 11287 | /* 21713*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 11288 | /* 21715*/ OPC_EmitMergeInputChains1_0, |
| 11289 | /* 21716*/ OPC_EmitInteger, MVT::i32, 0, |
| 11290 | /* 21719*/ OPC_EmitConvertToTarget, 2, |
| 11291 | /* 21721*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11292 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 11293 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_16>>) - Complexity = 14 |
| 11294 | // Dst: (ATOMIC_LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 11295 | /* 21730*/ 0, /*End of Scope*/ |
| 11296 | /* 21731*/ 0, // EndSwitchType |
| 11297 | /* 21732*/ /*SwitchOpcode*/ 105, TARGET_VAL(ISD::OR),// ->21840 |
| 11298 | /* 21735*/ OPC_RecordChild0, // #1 = $addr |
| 11299 | /* 21736*/ OPC_RecordChild1, // #2 = $off |
| 11300 | /* 21737*/ OPC_MoveChild1, |
| 11301 | /* 21738*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 11302 | /* 21741*/ OPC_MoveParent, |
| 11303 | /* 21742*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 11304 | /* 21744*/ OPC_SwitchType /*2 cases */, 45, MVT::i32,// ->21792 |
| 11305 | /* 21747*/ OPC_MoveParent, |
| 11306 | /* 21748*/ OPC_Scope, 20, /*->21770*/ // 2 children in Scope |
| 11307 | /* 21750*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 11308 | /* 21752*/ OPC_MoveParent, |
| 11309 | /* 21753*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 11310 | /* 21755*/ OPC_EmitMergeInputChains1_0, |
| 11311 | /* 21756*/ OPC_EmitInteger, MVT::i32, 0, |
| 11312 | /* 21759*/ OPC_EmitConvertToTarget, 2, |
| 11313 | /* 21761*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11314 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 11315 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_8>>) - Complexity = 14 |
| 11316 | // Dst: (ATOMIC_LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 11317 | /* 21770*/ /*Scope*/ 20, /*->21791*/ |
| 11318 | /* 21771*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 11319 | /* 21773*/ OPC_MoveParent, |
| 11320 | /* 21774*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 11321 | /* 21776*/ OPC_EmitMergeInputChains1_0, |
| 11322 | /* 21777*/ OPC_EmitInteger, MVT::i32, 0, |
| 11323 | /* 21780*/ OPC_EmitConvertToTarget, 2, |
| 11324 | /* 21782*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11325 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 11326 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_16>>) - Complexity = 14 |
| 11327 | // Dst: (ATOMIC_LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 11328 | /* 21791*/ 0, /*End of Scope*/ |
| 11329 | /* 21792*/ /*SwitchType*/ 45, MVT::i64,// ->21839 |
| 11330 | /* 21794*/ OPC_MoveParent, |
| 11331 | /* 21795*/ OPC_Scope, 20, /*->21817*/ // 2 children in Scope |
| 11332 | /* 21797*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 11333 | /* 21799*/ OPC_MoveParent, |
| 11334 | /* 21800*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 11335 | /* 21802*/ OPC_EmitMergeInputChains1_0, |
| 11336 | /* 21803*/ OPC_EmitInteger, MVT::i32, 0, |
| 11337 | /* 21806*/ OPC_EmitConvertToTarget, 2, |
| 11338 | /* 21808*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11339 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 11340 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_8>>) - Complexity = 14 |
| 11341 | // Dst: (ATOMIC_LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 11342 | /* 21817*/ /*Scope*/ 20, /*->21838*/ |
| 11343 | /* 21818*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 11344 | /* 21820*/ OPC_MoveParent, |
| 11345 | /* 21821*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 11346 | /* 21823*/ OPC_EmitMergeInputChains1_0, |
| 11347 | /* 21824*/ OPC_EmitInteger, MVT::i32, 0, |
| 11348 | /* 21827*/ OPC_EmitConvertToTarget, 2, |
| 11349 | /* 21829*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11350 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 11351 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_16>>) - Complexity = 14 |
| 11352 | // Dst: (ATOMIC_LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 11353 | /* 21838*/ 0, /*End of Scope*/ |
| 11354 | /* 21839*/ 0, // EndSwitchType |
| 11355 | /* 21840*/ /*SwitchOpcode*/ 125, TARGET_VAL(WebAssemblyISD::Wrapper),// ->21968 |
| 11356 | /* 21843*/ OPC_RecordChild0, // #1 = $off |
| 11357 | /* 21844*/ OPC_MoveChild0, |
| 11358 | /* 21845*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 11359 | /* 21848*/ OPC_MoveParent, |
| 11360 | /* 21849*/ OPC_MoveParent, |
| 11361 | /* 21850*/ OPC_Scope, 57, /*->21909*/ // 2 children in Scope |
| 11362 | /* 21852*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 11363 | /* 21854*/ OPC_MoveParent, |
| 11364 | /* 21855*/ OPC_Scope, 25, /*->21882*/ // 2 children in Scope |
| 11365 | /* 21857*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 11366 | /* 21859*/ OPC_EmitMergeInputChains1_0, |
| 11367 | /* 21860*/ OPC_EmitInteger, MVT::i32, 0, |
| 11368 | /* 21863*/ OPC_EmitInteger, MVT::i32, 0, |
| 11369 | /* 21866*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 11370 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 11371 | /* 21873*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11372 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 11373 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_8>>) - Complexity = 13 |
| 11374 | // Dst: (ATOMIC_LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 11375 | /* 21882*/ /*Scope*/ 25, /*->21908*/ |
| 11376 | /* 21883*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 11377 | /* 21885*/ OPC_EmitMergeInputChains1_0, |
| 11378 | /* 21886*/ OPC_EmitInteger, MVT::i32, 0, |
| 11379 | /* 21889*/ OPC_EmitInteger, MVT::i64, 0, |
| 11380 | /* 21892*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 11381 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 11382 | /* 21899*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11383 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 11384 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_8>>) - Complexity = 13 |
| 11385 | // Dst: (ATOMIC_LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 11386 | /* 21908*/ 0, /*End of Scope*/ |
| 11387 | /* 21909*/ /*Scope*/ 57, /*->21967*/ |
| 11388 | /* 21910*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 11389 | /* 21912*/ OPC_MoveParent, |
| 11390 | /* 21913*/ OPC_Scope, 25, /*->21940*/ // 2 children in Scope |
| 11391 | /* 21915*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 11392 | /* 21917*/ OPC_EmitMergeInputChains1_0, |
| 11393 | /* 21918*/ OPC_EmitInteger, MVT::i32, 0, |
| 11394 | /* 21921*/ OPC_EmitInteger, MVT::i32, 0, |
| 11395 | /* 21924*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 11396 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 11397 | /* 21931*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11398 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 11399 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_16>>) - Complexity = 13 |
| 11400 | // Dst: (ATOMIC_LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 11401 | /* 21940*/ /*Scope*/ 25, /*->21966*/ |
| 11402 | /* 21941*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 11403 | /* 21943*/ OPC_EmitMergeInputChains1_0, |
| 11404 | /* 21944*/ OPC_EmitInteger, MVT::i32, 0, |
| 11405 | /* 21947*/ OPC_EmitInteger, MVT::i64, 0, |
| 11406 | /* 21950*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 11407 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 11408 | /* 21957*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11409 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 11410 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_16>>) - Complexity = 13 |
| 11411 | // Dst: (ATOMIC_LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 11412 | /* 21966*/ 0, /*End of Scope*/ |
| 11413 | /* 21967*/ 0, /*End of Scope*/ |
| 11414 | /* 21968*/ 0, // EndSwitchOpcode |
| 11415 | /* 21969*/ /*Scope*/ 106|128,1/*234*/, /*->22205*/ |
| 11416 | /* 21971*/ OPC_RecordChild1, // #1 = $off |
| 11417 | /* 21972*/ OPC_Scope, 3|128,1/*131*/, /*->22106*/ // 3 children in Scope |
| 11418 | /* 21975*/ OPC_MoveChild1, |
| 11419 | /* 21976*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 11420 | /* 21979*/ OPC_MoveParent, |
| 11421 | /* 21980*/ OPC_Scope, 61, /*->22043*/ // 2 children in Scope |
| 11422 | /* 21982*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 11423 | /* 21984*/ OPC_MoveParent, |
| 11424 | /* 21985*/ OPC_Scope, 27, /*->22014*/ // 2 children in Scope |
| 11425 | /* 21987*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 11426 | /* 21989*/ OPC_EmitMergeInputChains1_0, |
| 11427 | /* 21990*/ OPC_EmitInteger, MVT::i32, 0, |
| 11428 | /* 21993*/ OPC_EmitConvertToTarget, 1, |
| 11429 | /* 21995*/ OPC_EmitInteger, MVT::i32, 0, |
| 11430 | /* 21998*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 11431 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 11432 | /* 22005*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11433 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 11434 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_8>>) - Complexity = 10 |
| 11435 | // Dst: (ATOMIC_LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 11436 | /* 22014*/ /*Scope*/ 27, /*->22042*/ |
| 11437 | /* 22015*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 11438 | /* 22017*/ OPC_EmitMergeInputChains1_0, |
| 11439 | /* 22018*/ OPC_EmitInteger, MVT::i32, 0, |
| 11440 | /* 22021*/ OPC_EmitConvertToTarget, 1, |
| 11441 | /* 22023*/ OPC_EmitInteger, MVT::i64, 0, |
| 11442 | /* 22026*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 11443 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 11444 | /* 22033*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11445 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 11446 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_8>>) - Complexity = 10 |
| 11447 | // Dst: (ATOMIC_LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 11448 | /* 22042*/ 0, /*End of Scope*/ |
| 11449 | /* 22043*/ /*Scope*/ 61, /*->22105*/ |
| 11450 | /* 22044*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 11451 | /* 22046*/ OPC_MoveParent, |
| 11452 | /* 22047*/ OPC_Scope, 27, /*->22076*/ // 2 children in Scope |
| 11453 | /* 22049*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 11454 | /* 22051*/ OPC_EmitMergeInputChains1_0, |
| 11455 | /* 22052*/ OPC_EmitInteger, MVT::i32, 0, |
| 11456 | /* 22055*/ OPC_EmitConvertToTarget, 1, |
| 11457 | /* 22057*/ OPC_EmitInteger, MVT::i32, 0, |
| 11458 | /* 22060*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 11459 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 11460 | /* 22067*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11461 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 11462 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_16>>) - Complexity = 10 |
| 11463 | // Dst: (ATOMIC_LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 11464 | /* 22076*/ /*Scope*/ 27, /*->22104*/ |
| 11465 | /* 22077*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 11466 | /* 22079*/ OPC_EmitMergeInputChains1_0, |
| 11467 | /* 22080*/ OPC_EmitInteger, MVT::i32, 0, |
| 11468 | /* 22083*/ OPC_EmitConvertToTarget, 1, |
| 11469 | /* 22085*/ OPC_EmitInteger, MVT::i64, 0, |
| 11470 | /* 22088*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 11471 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 11472 | /* 22095*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11473 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 11474 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_16>>) - Complexity = 10 |
| 11475 | // Dst: (ATOMIC_LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 11476 | /* 22104*/ 0, /*End of Scope*/ |
| 11477 | /* 22105*/ 0, /*End of Scope*/ |
| 11478 | /* 22106*/ /*Scope*/ 48, /*->22155*/ |
| 11479 | /* 22107*/ OPC_CheckChild1Type, MVT::i32, |
| 11480 | /* 22109*/ OPC_Scope, 21, /*->22132*/ // 2 children in Scope |
| 11481 | /* 22111*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 11482 | /* 22113*/ OPC_MoveParent, |
| 11483 | /* 22114*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 11484 | /* 22116*/ OPC_EmitMergeInputChains1_0, |
| 11485 | /* 22117*/ OPC_EmitInteger, MVT::i32, 0, |
| 11486 | /* 22120*/ OPC_EmitInteger, MVT::i32, 0, |
| 11487 | /* 22123*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11488 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 11489 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_atomic_load_8>>) - Complexity = 7 |
| 11490 | // Dst: (ATOMIC_LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 11491 | /* 22132*/ /*Scope*/ 21, /*->22154*/ |
| 11492 | /* 22133*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 11493 | /* 22135*/ OPC_MoveParent, |
| 11494 | /* 22136*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 11495 | /* 22138*/ OPC_EmitMergeInputChains1_0, |
| 11496 | /* 22139*/ OPC_EmitInteger, MVT::i32, 0, |
| 11497 | /* 22142*/ OPC_EmitInteger, MVT::i32, 0, |
| 11498 | /* 22145*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 11499 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 11500 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_atomic_load_16>>) - Complexity = 7 |
| 11501 | // Dst: (ATOMIC_LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 11502 | /* 22154*/ 0, /*End of Scope*/ |
| 11503 | /* 22155*/ /*Scope*/ 48, /*->22204*/ |
| 11504 | /* 22156*/ OPC_CheckChild1Type, MVT::i64, |
| 11505 | /* 22158*/ OPC_Scope, 21, /*->22181*/ // 2 children in Scope |
| 11506 | /* 22160*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 11507 | /* 22162*/ OPC_MoveParent, |
| 11508 | /* 22163*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 11509 | /* 22165*/ OPC_EmitMergeInputChains1_0, |
| 11510 | /* 22166*/ OPC_EmitInteger, MVT::i32, 0, |
| 11511 | /* 22169*/ OPC_EmitInteger, MVT::i64, 0, |
| 11512 | /* 22172*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11513 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 11514 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_atomic_load_8>>) - Complexity = 7 |
| 11515 | // Dst: (ATOMIC_LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 11516 | /* 22181*/ /*Scope*/ 21, /*->22203*/ |
| 11517 | /* 22182*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 11518 | /* 22184*/ OPC_MoveParent, |
| 11519 | /* 22185*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 11520 | /* 22187*/ OPC_EmitMergeInputChains1_0, |
| 11521 | /* 22188*/ OPC_EmitInteger, MVT::i32, 0, |
| 11522 | /* 22191*/ OPC_EmitInteger, MVT::i64, 0, |
| 11523 | /* 22194*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 11524 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 11525 | // Src: (anyext:{ *:[i64] } (atomic_load:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_atomic_load_16>>) - Complexity = 7 |
| 11526 | // Dst: (ATOMIC_LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 11527 | /* 22203*/ 0, /*End of Scope*/ |
| 11528 | /* 22204*/ 0, /*End of Scope*/ |
| 11529 | /* 22205*/ 0, /*End of Scope*/ |
| 11530 | /* 22206*/ 0, // EndSwitchOpcode |
| 11531 | /* 22207*/ /*Scope*/ 8, /*->22216*/ |
| 11532 | /* 22208*/ OPC_RecordChild0, // #0 = $src |
| 11533 | /* 22209*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_EXTEND_U_I32), 0, |
| 11534 | MVT::i64, 1/*#Ops*/, 0, |
| 11535 | // Src: (anyext:{ *:[i64] } I32:{ *:[i32] }:$src) - Complexity = 3 |
| 11536 | // Dst: (I64_EXTEND_U_I32:{ *:[i64] } I32:{ *:[i32] }:$src) |
| 11537 | /* 22216*/ 0, /*End of Scope*/ |
| 11538 | /* 22217*/ /*SwitchOpcode*/ 19|128,12/*1555*/, TARGET_VAL(ISD::SETCC),// ->23776 |
| 11539 | /* 22221*/ OPC_Scope, 22|128,2/*278*/, /*->22502*/ // 2 children in Scope |
| 11540 | /* 22224*/ OPC_MoveChild0, |
| 11541 | /* 22225*/ OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN), |
| 11542 | /* 22228*/ OPC_Scope, 6|128,1/*134*/, /*->22365*/ // 2 children in Scope |
| 11543 | /* 22231*/ OPC_CheckChild0Integer, 15|128,67/*8591*/, |
| 11544 | /* 22234*/ OPC_RecordChild1, // #0 = $x |
| 11545 | /* 22235*/ OPC_Scope, 31, /*->22268*/ // 4 children in Scope |
| 11546 | /* 22237*/ OPC_CheckChild1Type, MVT::v16i8, |
| 11547 | /* 22239*/ OPC_MoveParent, |
| 11548 | /* 22240*/ OPC_CheckType, MVT::i32, |
| 11549 | /* 22242*/ OPC_Scope, 11, /*->22255*/ // 2 children in Scope |
| 11550 | /* 22244*/ OPC_CheckChild1Integer, 0, |
| 11551 | /* 22246*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 11552 | /* 22248*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I8x16), 0, |
| 11553 | MVT::i32, 1/*#Ops*/, 0, |
| 11554 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v16i8] }:$x), 0:{ *:[i32] }, SETNE:{ *:[Other] }) - Complexity = 16 |
| 11555 | // Dst: (ANYTRUE_I8x16:{ *:[i32] } ?:{ *:[v16i8] }:$x) |
| 11556 | /* 22255*/ /*Scope*/ 11, /*->22267*/ |
| 11557 | /* 22256*/ OPC_CheckChild1Integer, 1, |
| 11558 | /* 22258*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11559 | /* 22260*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I8x16), 0, |
| 11560 | MVT::i32, 1/*#Ops*/, 0, |
| 11561 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v16i8] }:$x), 1:{ *:[i32] }, SETEQ:{ *:[Other] }) - Complexity = 16 |
| 11562 | // Dst: (ANYTRUE_I8x16:{ *:[i32] } ?:{ *:[v16i8] }:$x) |
| 11563 | /* 22267*/ 0, /*End of Scope*/ |
| 11564 | /* 22268*/ /*Scope*/ 31, /*->22300*/ |
| 11565 | /* 22269*/ OPC_CheckChild1Type, MVT::v8i16, |
| 11566 | /* 22271*/ OPC_MoveParent, |
| 11567 | /* 22272*/ OPC_CheckType, MVT::i32, |
| 11568 | /* 22274*/ OPC_Scope, 11, /*->22287*/ // 2 children in Scope |
| 11569 | /* 22276*/ OPC_CheckChild1Integer, 0, |
| 11570 | /* 22278*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 11571 | /* 22280*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I16x8), 0, |
| 11572 | MVT::i32, 1/*#Ops*/, 0, |
| 11573 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v8i16] }:$x), 0:{ *:[i32] }, SETNE:{ *:[Other] }) - Complexity = 16 |
| 11574 | // Dst: (ANYTRUE_I16x8:{ *:[i32] } ?:{ *:[v8i16] }:$x) |
| 11575 | /* 22287*/ /*Scope*/ 11, /*->22299*/ |
| 11576 | /* 22288*/ OPC_CheckChild1Integer, 1, |
| 11577 | /* 22290*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11578 | /* 22292*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I16x8), 0, |
| 11579 | MVT::i32, 1/*#Ops*/, 0, |
| 11580 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v8i16] }:$x), 1:{ *:[i32] }, SETEQ:{ *:[Other] }) - Complexity = 16 |
| 11581 | // Dst: (ANYTRUE_I16x8:{ *:[i32] } ?:{ *:[v8i16] }:$x) |
| 11582 | /* 22299*/ 0, /*End of Scope*/ |
| 11583 | /* 22300*/ /*Scope*/ 31, /*->22332*/ |
| 11584 | /* 22301*/ OPC_CheckChild1Type, MVT::v4i32, |
| 11585 | /* 22303*/ OPC_MoveParent, |
| 11586 | /* 22304*/ OPC_CheckType, MVT::i32, |
| 11587 | /* 22306*/ OPC_Scope, 11, /*->22319*/ // 2 children in Scope |
| 11588 | /* 22308*/ OPC_CheckChild1Integer, 0, |
| 11589 | /* 22310*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 11590 | /* 22312*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I32x4), 0, |
| 11591 | MVT::i32, 1/*#Ops*/, 0, |
| 11592 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v4i32] }:$x), 0:{ *:[i32] }, SETNE:{ *:[Other] }) - Complexity = 16 |
| 11593 | // Dst: (ANYTRUE_I32x4:{ *:[i32] } ?:{ *:[v4i32] }:$x) |
| 11594 | /* 22319*/ /*Scope*/ 11, /*->22331*/ |
| 11595 | /* 22320*/ OPC_CheckChild1Integer, 1, |
| 11596 | /* 22322*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11597 | /* 22324*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I32x4), 0, |
| 11598 | MVT::i32, 1/*#Ops*/, 0, |
| 11599 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v4i32] }:$x), 1:{ *:[i32] }, SETEQ:{ *:[Other] }) - Complexity = 16 |
| 11600 | // Dst: (ANYTRUE_I32x4:{ *:[i32] } ?:{ *:[v4i32] }:$x) |
| 11601 | /* 22331*/ 0, /*End of Scope*/ |
| 11602 | /* 22332*/ /*Scope*/ 31, /*->22364*/ |
| 11603 | /* 22333*/ OPC_CheckChild1Type, MVT::v2i64, |
| 11604 | /* 22335*/ OPC_MoveParent, |
| 11605 | /* 22336*/ OPC_CheckType, MVT::i32, |
| 11606 | /* 22338*/ OPC_Scope, 11, /*->22351*/ // 2 children in Scope |
| 11607 | /* 22340*/ OPC_CheckChild1Integer, 0, |
| 11608 | /* 22342*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 11609 | /* 22344*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I64x2), 0, |
| 11610 | MVT::i32, 1/*#Ops*/, 0, |
| 11611 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v2i64] }:$x), 0:{ *:[i32] }, SETNE:{ *:[Other] }) - Complexity = 16 |
| 11612 | // Dst: (ANYTRUE_I64x2:{ *:[i32] } ?:{ *:[v2i64] }:$x) |
| 11613 | /* 22351*/ /*Scope*/ 11, /*->22363*/ |
| 11614 | /* 22352*/ OPC_CheckChild1Integer, 1, |
| 11615 | /* 22354*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11616 | /* 22356*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I64x2), 0, |
| 11617 | MVT::i32, 1/*#Ops*/, 0, |
| 11618 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v2i64] }:$x), 1:{ *:[i32] }, SETEQ:{ *:[Other] }) - Complexity = 16 |
| 11619 | // Dst: (ANYTRUE_I64x2:{ *:[i32] } ?:{ *:[v2i64] }:$x) |
| 11620 | /* 22363*/ 0, /*End of Scope*/ |
| 11621 | /* 22364*/ 0, /*End of Scope*/ |
| 11622 | /* 22365*/ /*Scope*/ 6|128,1/*134*/, /*->22501*/ |
| 11623 | /* 22367*/ OPC_CheckChild0Integer, 14|128,67/*8590*/, |
| 11624 | /* 22370*/ OPC_RecordChild1, // #0 = $x |
| 11625 | /* 22371*/ OPC_Scope, 31, /*->22404*/ // 4 children in Scope |
| 11626 | /* 22373*/ OPC_CheckChild1Type, MVT::v16i8, |
| 11627 | /* 22375*/ OPC_MoveParent, |
| 11628 | /* 22376*/ OPC_CheckType, MVT::i32, |
| 11629 | /* 22378*/ OPC_Scope, 11, /*->22391*/ // 2 children in Scope |
| 11630 | /* 22380*/ OPC_CheckChild1Integer, 0, |
| 11631 | /* 22382*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 11632 | /* 22384*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I8x16), 0, |
| 11633 | MVT::i32, 1/*#Ops*/, 0, |
| 11634 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v16i8] }:$x), 0:{ *:[i32] }, SETNE:{ *:[Other] }) - Complexity = 16 |
| 11635 | // Dst: (ALLTRUE_I8x16:{ *:[i32] } ?:{ *:[v16i8] }:$x) |
| 11636 | /* 22391*/ /*Scope*/ 11, /*->22403*/ |
| 11637 | /* 22392*/ OPC_CheckChild1Integer, 1, |
| 11638 | /* 22394*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11639 | /* 22396*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I8x16), 0, |
| 11640 | MVT::i32, 1/*#Ops*/, 0, |
| 11641 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v16i8] }:$x), 1:{ *:[i32] }, SETEQ:{ *:[Other] }) - Complexity = 16 |
| 11642 | // Dst: (ALLTRUE_I8x16:{ *:[i32] } ?:{ *:[v16i8] }:$x) |
| 11643 | /* 22403*/ 0, /*End of Scope*/ |
| 11644 | /* 22404*/ /*Scope*/ 31, /*->22436*/ |
| 11645 | /* 22405*/ OPC_CheckChild1Type, MVT::v8i16, |
| 11646 | /* 22407*/ OPC_MoveParent, |
| 11647 | /* 22408*/ OPC_CheckType, MVT::i32, |
| 11648 | /* 22410*/ OPC_Scope, 11, /*->22423*/ // 2 children in Scope |
| 11649 | /* 22412*/ OPC_CheckChild1Integer, 0, |
| 11650 | /* 22414*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 11651 | /* 22416*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I16x8), 0, |
| 11652 | MVT::i32, 1/*#Ops*/, 0, |
| 11653 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v8i16] }:$x), 0:{ *:[i32] }, SETNE:{ *:[Other] }) - Complexity = 16 |
| 11654 | // Dst: (ALLTRUE_I16x8:{ *:[i32] } ?:{ *:[v8i16] }:$x) |
| 11655 | /* 22423*/ /*Scope*/ 11, /*->22435*/ |
| 11656 | /* 22424*/ OPC_CheckChild1Integer, 1, |
| 11657 | /* 22426*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11658 | /* 22428*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I16x8), 0, |
| 11659 | MVT::i32, 1/*#Ops*/, 0, |
| 11660 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v8i16] }:$x), 1:{ *:[i32] }, SETEQ:{ *:[Other] }) - Complexity = 16 |
| 11661 | // Dst: (ALLTRUE_I16x8:{ *:[i32] } ?:{ *:[v8i16] }:$x) |
| 11662 | /* 22435*/ 0, /*End of Scope*/ |
| 11663 | /* 22436*/ /*Scope*/ 31, /*->22468*/ |
| 11664 | /* 22437*/ OPC_CheckChild1Type, MVT::v4i32, |
| 11665 | /* 22439*/ OPC_MoveParent, |
| 11666 | /* 22440*/ OPC_CheckType, MVT::i32, |
| 11667 | /* 22442*/ OPC_Scope, 11, /*->22455*/ // 2 children in Scope |
| 11668 | /* 22444*/ OPC_CheckChild1Integer, 0, |
| 11669 | /* 22446*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 11670 | /* 22448*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I32x4), 0, |
| 11671 | MVT::i32, 1/*#Ops*/, 0, |
| 11672 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v4i32] }:$x), 0:{ *:[i32] }, SETNE:{ *:[Other] }) - Complexity = 16 |
| 11673 | // Dst: (ALLTRUE_I32x4:{ *:[i32] } ?:{ *:[v4i32] }:$x) |
| 11674 | /* 22455*/ /*Scope*/ 11, /*->22467*/ |
| 11675 | /* 22456*/ OPC_CheckChild1Integer, 1, |
| 11676 | /* 22458*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11677 | /* 22460*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I32x4), 0, |
| 11678 | MVT::i32, 1/*#Ops*/, 0, |
| 11679 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v4i32] }:$x), 1:{ *:[i32] }, SETEQ:{ *:[Other] }) - Complexity = 16 |
| 11680 | // Dst: (ALLTRUE_I32x4:{ *:[i32] } ?:{ *:[v4i32] }:$x) |
| 11681 | /* 22467*/ 0, /*End of Scope*/ |
| 11682 | /* 22468*/ /*Scope*/ 31, /*->22500*/ |
| 11683 | /* 22469*/ OPC_CheckChild1Type, MVT::v2i64, |
| 11684 | /* 22471*/ OPC_MoveParent, |
| 11685 | /* 22472*/ OPC_CheckType, MVT::i32, |
| 11686 | /* 22474*/ OPC_Scope, 11, /*->22487*/ // 2 children in Scope |
| 11687 | /* 22476*/ OPC_CheckChild1Integer, 0, |
| 11688 | /* 22478*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 11689 | /* 22480*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I64x2), 0, |
| 11690 | MVT::i32, 1/*#Ops*/, 0, |
| 11691 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v2i64] }:$x), 0:{ *:[i32] }, SETNE:{ *:[Other] }) - Complexity = 16 |
| 11692 | // Dst: (ALLTRUE_I64x2:{ *:[i32] } ?:{ *:[v2i64] }:$x) |
| 11693 | /* 22487*/ /*Scope*/ 11, /*->22499*/ |
| 11694 | /* 22488*/ OPC_CheckChild1Integer, 1, |
| 11695 | /* 22490*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11696 | /* 22492*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I64x2), 0, |
| 11697 | MVT::i32, 1/*#Ops*/, 0, |
| 11698 | // Src: (setcc:{ *:[i32] } (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v2i64] }:$x), 1:{ *:[i32] }, SETEQ:{ *:[Other] }) - Complexity = 16 |
| 11699 | // Dst: (ALLTRUE_I64x2:{ *:[i32] } ?:{ *:[v2i64] }:$x) |
| 11700 | /* 22499*/ 0, /*End of Scope*/ |
| 11701 | /* 22500*/ 0, /*End of Scope*/ |
| 11702 | /* 22501*/ 0, /*End of Scope*/ |
| 11703 | /* 22502*/ /*Scope*/ 119|128,9/*1271*/, /*->23775*/ |
| 11704 | /* 22504*/ OPC_RecordChild0, // #0 = $src |
| 11705 | /* 22505*/ OPC_SwitchType /*5 cases */, 32|128,4/*544*/, MVT::i32,// ->23053 |
| 11706 | /* 22509*/ OPC_Scope, 2|128,1/*130*/, /*->22642*/ // 4 children in Scope |
| 11707 | /* 22512*/ OPC_CheckChild0Type, MVT::i32, |
| 11708 | /* 22514*/ OPC_Scope, 11, /*->22527*/ // 2 children in Scope |
| 11709 | /* 22516*/ OPC_CheckChild1Integer, 0, |
| 11710 | /* 22518*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11711 | /* 22520*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQZ_I32), 0, |
| 11712 | MVT::i32, 1/*#Ops*/, 0, |
| 11713 | // Src: (setcc:{ *:[i32] } I32:{ *:[i32] }:$src, 0:{ *:[i32] }, SETEQ:{ *:[Other] }) - Complexity = 8 |
| 11714 | // Dst: (EQZ_I32:{ *:[i32] } I32:{ *:[i32] }:$src) |
| 11715 | /* 22527*/ /*Scope*/ 113, /*->22641*/ |
| 11716 | /* 22528*/ OPC_RecordChild1, // #1 = $rhs |
| 11717 | /* 22529*/ OPC_Scope, 10, /*->22541*/ // 10 children in Scope |
| 11718 | /* 22531*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11719 | /* 22533*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_I32), 0, |
| 11720 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11721 | // Src: (setcc:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }) - Complexity = 3 |
| 11722 | // Dst: (EQ_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 11723 | /* 22541*/ /*Scope*/ 10, /*->22552*/ |
| 11724 | /* 22542*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 11725 | /* 22544*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_I32), 0, |
| 11726 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11727 | // Src: (setcc:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }) - Complexity = 3 |
| 11728 | // Dst: (NE_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 11729 | /* 22552*/ /*Scope*/ 10, /*->22563*/ |
| 11730 | /* 22553*/ OPC_CheckChild2CondCode, ISD::SETLT, |
| 11731 | /* 22555*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_S_I32), 0, |
| 11732 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11733 | // Src: (setcc:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs, SETLT:{ *:[Other] }) - Complexity = 3 |
| 11734 | // Dst: (LT_S_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 11735 | /* 22563*/ /*Scope*/ 10, /*->22574*/ |
| 11736 | /* 22564*/ OPC_CheckChild2CondCode, ISD::SETULT, |
| 11737 | /* 22566*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_U_I32), 0, |
| 11738 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11739 | // Src: (setcc:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs, SETULT:{ *:[Other] }) - Complexity = 3 |
| 11740 | // Dst: (LT_U_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 11741 | /* 22574*/ /*Scope*/ 10, /*->22585*/ |
| 11742 | /* 22575*/ OPC_CheckChild2CondCode, ISD::SETGT, |
| 11743 | /* 22577*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_S_I32), 0, |
| 11744 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11745 | // Src: (setcc:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs, SETGT:{ *:[Other] }) - Complexity = 3 |
| 11746 | // Dst: (GT_S_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 11747 | /* 22585*/ /*Scope*/ 10, /*->22596*/ |
| 11748 | /* 22586*/ OPC_CheckChild2CondCode, ISD::SETUGT, |
| 11749 | /* 22588*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_U_I32), 0, |
| 11750 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11751 | // Src: (setcc:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs, SETUGT:{ *:[Other] }) - Complexity = 3 |
| 11752 | // Dst: (GT_U_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 11753 | /* 22596*/ /*Scope*/ 10, /*->22607*/ |
| 11754 | /* 22597*/ OPC_CheckChild2CondCode, ISD::SETLE, |
| 11755 | /* 22599*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_S_I32), 0, |
| 11756 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11757 | // Src: (setcc:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }) - Complexity = 3 |
| 11758 | // Dst: (LE_S_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 11759 | /* 22607*/ /*Scope*/ 10, /*->22618*/ |
| 11760 | /* 22608*/ OPC_CheckChild2CondCode, ISD::SETULE, |
| 11761 | /* 22610*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_U_I32), 0, |
| 11762 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11763 | // Src: (setcc:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }) - Complexity = 3 |
| 11764 | // Dst: (LE_U_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 11765 | /* 22618*/ /*Scope*/ 10, /*->22629*/ |
| 11766 | /* 22619*/ OPC_CheckChild2CondCode, ISD::SETGE, |
| 11767 | /* 22621*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_S_I32), 0, |
| 11768 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11769 | // Src: (setcc:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }) - Complexity = 3 |
| 11770 | // Dst: (GE_S_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 11771 | /* 22629*/ /*Scope*/ 10, /*->22640*/ |
| 11772 | /* 22630*/ OPC_CheckChild2CondCode, ISD::SETUGE, |
| 11773 | /* 22632*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_U_I32), 0, |
| 11774 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11775 | // Src: (setcc:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }) - Complexity = 3 |
| 11776 | // Dst: (GE_U_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 11777 | /* 22640*/ 0, /*End of Scope*/ |
| 11778 | /* 22641*/ 0, /*End of Scope*/ |
| 11779 | /* 22642*/ /*Scope*/ 2|128,1/*130*/, /*->22774*/ |
| 11780 | /* 22644*/ OPC_CheckChild0Type, MVT::i64, |
| 11781 | /* 22646*/ OPC_Scope, 11, /*->22659*/ // 2 children in Scope |
| 11782 | /* 22648*/ OPC_CheckChild1Integer, 0, |
| 11783 | /* 22650*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11784 | /* 22652*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQZ_I64), 0, |
| 11785 | MVT::i32, 1/*#Ops*/, 0, |
| 11786 | // Src: (setcc:{ *:[i32] } I64:{ *:[i64] }:$src, 0:{ *:[i64] }, SETEQ:{ *:[Other] }) - Complexity = 8 |
| 11787 | // Dst: (EQZ_I64:{ *:[i32] } I64:{ *:[i64] }:$src) |
| 11788 | /* 22659*/ /*Scope*/ 113, /*->22773*/ |
| 11789 | /* 22660*/ OPC_RecordChild1, // #1 = $rhs |
| 11790 | /* 22661*/ OPC_Scope, 10, /*->22673*/ // 10 children in Scope |
| 11791 | /* 22663*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11792 | /* 22665*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_I64), 0, |
| 11793 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11794 | // Src: (setcc:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs, SETEQ:{ *:[Other] }) - Complexity = 3 |
| 11795 | // Dst: (EQ_I64:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 11796 | /* 22673*/ /*Scope*/ 10, /*->22684*/ |
| 11797 | /* 22674*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 11798 | /* 22676*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_I64), 0, |
| 11799 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11800 | // Src: (setcc:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs, SETNE:{ *:[Other] }) - Complexity = 3 |
| 11801 | // Dst: (NE_I64:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 11802 | /* 22684*/ /*Scope*/ 10, /*->22695*/ |
| 11803 | /* 22685*/ OPC_CheckChild2CondCode, ISD::SETLT, |
| 11804 | /* 22687*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_S_I64), 0, |
| 11805 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11806 | // Src: (setcc:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs, SETLT:{ *:[Other] }) - Complexity = 3 |
| 11807 | // Dst: (LT_S_I64:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 11808 | /* 22695*/ /*Scope*/ 10, /*->22706*/ |
| 11809 | /* 22696*/ OPC_CheckChild2CondCode, ISD::SETULT, |
| 11810 | /* 22698*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_U_I64), 0, |
| 11811 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11812 | // Src: (setcc:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs, SETULT:{ *:[Other] }) - Complexity = 3 |
| 11813 | // Dst: (LT_U_I64:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 11814 | /* 22706*/ /*Scope*/ 10, /*->22717*/ |
| 11815 | /* 22707*/ OPC_CheckChild2CondCode, ISD::SETGT, |
| 11816 | /* 22709*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_S_I64), 0, |
| 11817 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11818 | // Src: (setcc:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs, SETGT:{ *:[Other] }) - Complexity = 3 |
| 11819 | // Dst: (GT_S_I64:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 11820 | /* 22717*/ /*Scope*/ 10, /*->22728*/ |
| 11821 | /* 22718*/ OPC_CheckChild2CondCode, ISD::SETUGT, |
| 11822 | /* 22720*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_U_I64), 0, |
| 11823 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11824 | // Src: (setcc:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs, SETUGT:{ *:[Other] }) - Complexity = 3 |
| 11825 | // Dst: (GT_U_I64:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 11826 | /* 22728*/ /*Scope*/ 10, /*->22739*/ |
| 11827 | /* 22729*/ OPC_CheckChild2CondCode, ISD::SETLE, |
| 11828 | /* 22731*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_S_I64), 0, |
| 11829 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11830 | // Src: (setcc:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs, SETLE:{ *:[Other] }) - Complexity = 3 |
| 11831 | // Dst: (LE_S_I64:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 11832 | /* 22739*/ /*Scope*/ 10, /*->22750*/ |
| 11833 | /* 22740*/ OPC_CheckChild2CondCode, ISD::SETULE, |
| 11834 | /* 22742*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_U_I64), 0, |
| 11835 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11836 | // Src: (setcc:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs, SETULE:{ *:[Other] }) - Complexity = 3 |
| 11837 | // Dst: (LE_U_I64:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 11838 | /* 22750*/ /*Scope*/ 10, /*->22761*/ |
| 11839 | /* 22751*/ OPC_CheckChild2CondCode, ISD::SETGE, |
| 11840 | /* 22753*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_S_I64), 0, |
| 11841 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11842 | // Src: (setcc:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs, SETGE:{ *:[Other] }) - Complexity = 3 |
| 11843 | // Dst: (GE_S_I64:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 11844 | /* 22761*/ /*Scope*/ 10, /*->22772*/ |
| 11845 | /* 22762*/ OPC_CheckChild2CondCode, ISD::SETUGE, |
| 11846 | /* 22764*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_U_I64), 0, |
| 11847 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11848 | // Src: (setcc:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs, SETUGE:{ *:[Other] }) - Complexity = 3 |
| 11849 | // Dst: (GE_U_I64:{ *:[i32] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 11850 | /* 22772*/ 0, /*End of Scope*/ |
| 11851 | /* 22773*/ 0, /*End of Scope*/ |
| 11852 | /* 22774*/ /*Scope*/ 9|128,1/*137*/, /*->22913*/ |
| 11853 | /* 22776*/ OPC_CheckChild0Type, MVT::f32, |
| 11854 | /* 22778*/ OPC_RecordChild1, // #1 = $rhs |
| 11855 | /* 22779*/ OPC_Scope, 10, /*->22791*/ // 12 children in Scope |
| 11856 | /* 22781*/ OPC_CheckChild2CondCode, ISD::SETOEQ, |
| 11857 | /* 22783*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_F32), 0, |
| 11858 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11859 | // Src: (setcc:{ *:[i32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs, SETOEQ:{ *:[Other] }) - Complexity = 3 |
| 11860 | // Dst: (EQ_F32:{ *:[i32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 11861 | /* 22791*/ /*Scope*/ 10, /*->22802*/ |
| 11862 | /* 22792*/ OPC_CheckChild2CondCode, ISD::SETUNE, |
| 11863 | /* 22794*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_F32), 0, |
| 11864 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11865 | // Src: (setcc:{ *:[i32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs, SETUNE:{ *:[Other] }) - Complexity = 3 |
| 11866 | // Dst: (NE_F32:{ *:[i32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 11867 | /* 22802*/ /*Scope*/ 10, /*->22813*/ |
| 11868 | /* 22803*/ OPC_CheckChild2CondCode, ISD::SETOLT, |
| 11869 | /* 22805*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_F32), 0, |
| 11870 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11871 | // Src: (setcc:{ *:[i32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs, SETOLT:{ *:[Other] }) - Complexity = 3 |
| 11872 | // Dst: (LT_F32:{ *:[i32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 11873 | /* 22813*/ /*Scope*/ 10, /*->22824*/ |
| 11874 | /* 22814*/ OPC_CheckChild2CondCode, ISD::SETOLE, |
| 11875 | /* 22816*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_F32), 0, |
| 11876 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11877 | // Src: (setcc:{ *:[i32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs, SETOLE:{ *:[Other] }) - Complexity = 3 |
| 11878 | // Dst: (LE_F32:{ *:[i32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 11879 | /* 22824*/ /*Scope*/ 10, /*->22835*/ |
| 11880 | /* 22825*/ OPC_CheckChild2CondCode, ISD::SETOGT, |
| 11881 | /* 22827*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_F32), 0, |
| 11882 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11883 | // Src: (setcc:{ *:[i32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs, SETOGT:{ *:[Other] }) - Complexity = 3 |
| 11884 | // Dst: (GT_F32:{ *:[i32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 11885 | /* 22835*/ /*Scope*/ 10, /*->22846*/ |
| 11886 | /* 22836*/ OPC_CheckChild2CondCode, ISD::SETOGE, |
| 11887 | /* 22838*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_F32), 0, |
| 11888 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11889 | // Src: (setcc:{ *:[i32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs, SETOGE:{ *:[Other] }) - Complexity = 3 |
| 11890 | // Dst: (GE_F32:{ *:[i32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 11891 | /* 22846*/ /*Scope*/ 10, /*->22857*/ |
| 11892 | /* 22847*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11893 | /* 22849*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_F32), 0, |
| 11894 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11895 | // Src: (setcc:{ *:[i32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs, SETEQ:{ *:[Other] }) - Complexity = 3 |
| 11896 | // Dst: (EQ_F32:{ *:[i32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) |
| 11897 | /* 22857*/ /*Scope*/ 10, /*->22868*/ |
| 11898 | /* 22858*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 11899 | /* 22860*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_F32), 0, |
| 11900 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11901 | // Src: (setcc:{ *:[i32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs, SETNE:{ *:[Other] }) - Complexity = 3 |
| 11902 | // Dst: (NE_F32:{ *:[i32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) |
| 11903 | /* 22868*/ /*Scope*/ 10, /*->22879*/ |
| 11904 | /* 22869*/ OPC_CheckChild2CondCode, ISD::SETLT, |
| 11905 | /* 22871*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_F32), 0, |
| 11906 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11907 | // Src: (setcc:{ *:[i32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs, SETLT:{ *:[Other] }) - Complexity = 3 |
| 11908 | // Dst: (LT_F32:{ *:[i32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) |
| 11909 | /* 22879*/ /*Scope*/ 10, /*->22890*/ |
| 11910 | /* 22880*/ OPC_CheckChild2CondCode, ISD::SETLE, |
| 11911 | /* 22882*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_F32), 0, |
| 11912 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11913 | // Src: (setcc:{ *:[i32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs, SETLE:{ *:[Other] }) - Complexity = 3 |
| 11914 | // Dst: (LE_F32:{ *:[i32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) |
| 11915 | /* 22890*/ /*Scope*/ 10, /*->22901*/ |
| 11916 | /* 22891*/ OPC_CheckChild2CondCode, ISD::SETGT, |
| 11917 | /* 22893*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_F32), 0, |
| 11918 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11919 | // Src: (setcc:{ *:[i32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs, SETGT:{ *:[Other] }) - Complexity = 3 |
| 11920 | // Dst: (GT_F32:{ *:[i32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) |
| 11921 | /* 22901*/ /*Scope*/ 10, /*->22912*/ |
| 11922 | /* 22902*/ OPC_CheckChild2CondCode, ISD::SETGE, |
| 11923 | /* 22904*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_F32), 0, |
| 11924 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11925 | // Src: (setcc:{ *:[i32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs, SETGE:{ *:[Other] }) - Complexity = 3 |
| 11926 | // Dst: (GE_F32:{ *:[i32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) |
| 11927 | /* 22912*/ 0, /*End of Scope*/ |
| 11928 | /* 22913*/ /*Scope*/ 9|128,1/*137*/, /*->23052*/ |
| 11929 | /* 22915*/ OPC_CheckChild0Type, MVT::f64, |
| 11930 | /* 22917*/ OPC_RecordChild1, // #1 = $rhs |
| 11931 | /* 22918*/ OPC_Scope, 10, /*->22930*/ // 12 children in Scope |
| 11932 | /* 22920*/ OPC_CheckChild2CondCode, ISD::SETOEQ, |
| 11933 | /* 22922*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_F64), 0, |
| 11934 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11935 | // Src: (setcc:{ *:[i32] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs, SETOEQ:{ *:[Other] }) - Complexity = 3 |
| 11936 | // Dst: (EQ_F64:{ *:[i32] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 11937 | /* 22930*/ /*Scope*/ 10, /*->22941*/ |
| 11938 | /* 22931*/ OPC_CheckChild2CondCode, ISD::SETUNE, |
| 11939 | /* 22933*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_F64), 0, |
| 11940 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11941 | // Src: (setcc:{ *:[i32] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs, SETUNE:{ *:[Other] }) - Complexity = 3 |
| 11942 | // Dst: (NE_F64:{ *:[i32] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 11943 | /* 22941*/ /*Scope*/ 10, /*->22952*/ |
| 11944 | /* 22942*/ OPC_CheckChild2CondCode, ISD::SETOLT, |
| 11945 | /* 22944*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_F64), 0, |
| 11946 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11947 | // Src: (setcc:{ *:[i32] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs, SETOLT:{ *:[Other] }) - Complexity = 3 |
| 11948 | // Dst: (LT_F64:{ *:[i32] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 11949 | /* 22952*/ /*Scope*/ 10, /*->22963*/ |
| 11950 | /* 22953*/ OPC_CheckChild2CondCode, ISD::SETOLE, |
| 11951 | /* 22955*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_F64), 0, |
| 11952 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11953 | // Src: (setcc:{ *:[i32] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs, SETOLE:{ *:[Other] }) - Complexity = 3 |
| 11954 | // Dst: (LE_F64:{ *:[i32] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 11955 | /* 22963*/ /*Scope*/ 10, /*->22974*/ |
| 11956 | /* 22964*/ OPC_CheckChild2CondCode, ISD::SETOGT, |
| 11957 | /* 22966*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_F64), 0, |
| 11958 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11959 | // Src: (setcc:{ *:[i32] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs, SETOGT:{ *:[Other] }) - Complexity = 3 |
| 11960 | // Dst: (GT_F64:{ *:[i32] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 11961 | /* 22974*/ /*Scope*/ 10, /*->22985*/ |
| 11962 | /* 22975*/ OPC_CheckChild2CondCode, ISD::SETOGE, |
| 11963 | /* 22977*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_F64), 0, |
| 11964 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11965 | // Src: (setcc:{ *:[i32] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs, SETOGE:{ *:[Other] }) - Complexity = 3 |
| 11966 | // Dst: (GE_F64:{ *:[i32] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 11967 | /* 22985*/ /*Scope*/ 10, /*->22996*/ |
| 11968 | /* 22986*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 11969 | /* 22988*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_F64), 0, |
| 11970 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11971 | // Src: (setcc:{ *:[i32] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs, SETEQ:{ *:[Other] }) - Complexity = 3 |
| 11972 | // Dst: (EQ_F64:{ *:[i32] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) |
| 11973 | /* 22996*/ /*Scope*/ 10, /*->23007*/ |
| 11974 | /* 22997*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 11975 | /* 22999*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_F64), 0, |
| 11976 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11977 | // Src: (setcc:{ *:[i32] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs, SETNE:{ *:[Other] }) - Complexity = 3 |
| 11978 | // Dst: (NE_F64:{ *:[i32] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) |
| 11979 | /* 23007*/ /*Scope*/ 10, /*->23018*/ |
| 11980 | /* 23008*/ OPC_CheckChild2CondCode, ISD::SETLT, |
| 11981 | /* 23010*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_F64), 0, |
| 11982 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11983 | // Src: (setcc:{ *:[i32] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs, SETLT:{ *:[Other] }) - Complexity = 3 |
| 11984 | // Dst: (LT_F64:{ *:[i32] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) |
| 11985 | /* 23018*/ /*Scope*/ 10, /*->23029*/ |
| 11986 | /* 23019*/ OPC_CheckChild2CondCode, ISD::SETLE, |
| 11987 | /* 23021*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_F64), 0, |
| 11988 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11989 | // Src: (setcc:{ *:[i32] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs, SETLE:{ *:[Other] }) - Complexity = 3 |
| 11990 | // Dst: (LE_F64:{ *:[i32] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) |
| 11991 | /* 23029*/ /*Scope*/ 10, /*->23040*/ |
| 11992 | /* 23030*/ OPC_CheckChild2CondCode, ISD::SETGT, |
| 11993 | /* 23032*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_F64), 0, |
| 11994 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 11995 | // Src: (setcc:{ *:[i32] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs, SETGT:{ *:[Other] }) - Complexity = 3 |
| 11996 | // Dst: (GT_F64:{ *:[i32] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) |
| 11997 | /* 23040*/ /*Scope*/ 10, /*->23051*/ |
| 11998 | /* 23041*/ OPC_CheckChild2CondCode, ISD::SETGE, |
| 11999 | /* 23043*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_F64), 0, |
| 12000 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 12001 | // Src: (setcc:{ *:[i32] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs, SETGE:{ *:[Other] }) - Complexity = 3 |
| 12002 | // Dst: (GE_F64:{ *:[i32] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) |
| 12003 | /* 23051*/ 0, /*End of Scope*/ |
| 12004 | /* 23052*/ 0, /*End of Scope*/ |
| 12005 | /* 23053*/ /*SwitchType*/ 7|128,1/*135*/, MVT::v16i8,// ->23191 |
| 12006 | /* 23056*/ OPC_CheckChild0Type, MVT::v16i8, |
| 12007 | /* 23058*/ OPC_RecordChild1, // #1 = $rhs |
| 12008 | /* 23059*/ OPC_Scope, 12, /*->23073*/ // 10 children in Scope |
| 12009 | /* 23061*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 12010 | /* 23063*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12011 | /* 23065*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_I8x16), 0, |
| 12012 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 12013 | // Src: (setcc:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs, SETEQ:{ *:[Other] }) - Complexity = 3 |
| 12014 | // Dst: (EQ_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 12015 | /* 23073*/ /*Scope*/ 12, /*->23086*/ |
| 12016 | /* 23074*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 12017 | /* 23076*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12018 | /* 23078*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_I8x16), 0, |
| 12019 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 12020 | // Src: (setcc:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs, SETNE:{ *:[Other] }) - Complexity = 3 |
| 12021 | // Dst: (NE_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 12022 | /* 23086*/ /*Scope*/ 12, /*->23099*/ |
| 12023 | /* 23087*/ OPC_CheckChild2CondCode, ISD::SETLT, |
| 12024 | /* 23089*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12025 | /* 23091*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_S_I8x16), 0, |
| 12026 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 12027 | // Src: (setcc:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs, SETLT:{ *:[Other] }) - Complexity = 3 |
| 12028 | // Dst: (LT_S_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 12029 | /* 23099*/ /*Scope*/ 12, /*->23112*/ |
| 12030 | /* 23100*/ OPC_CheckChild2CondCode, ISD::SETULT, |
| 12031 | /* 23102*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12032 | /* 23104*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_U_I8x16), 0, |
| 12033 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 12034 | // Src: (setcc:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs, SETULT:{ *:[Other] }) - Complexity = 3 |
| 12035 | // Dst: (LT_U_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 12036 | /* 23112*/ /*Scope*/ 12, /*->23125*/ |
| 12037 | /* 23113*/ OPC_CheckChild2CondCode, ISD::SETGT, |
| 12038 | /* 23115*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12039 | /* 23117*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_S_I8x16), 0, |
| 12040 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 12041 | // Src: (setcc:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs, SETGT:{ *:[Other] }) - Complexity = 3 |
| 12042 | // Dst: (GT_S_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 12043 | /* 23125*/ /*Scope*/ 12, /*->23138*/ |
| 12044 | /* 23126*/ OPC_CheckChild2CondCode, ISD::SETUGT, |
| 12045 | /* 23128*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12046 | /* 23130*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_U_I8x16), 0, |
| 12047 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 12048 | // Src: (setcc:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs, SETUGT:{ *:[Other] }) - Complexity = 3 |
| 12049 | // Dst: (GT_U_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 12050 | /* 23138*/ /*Scope*/ 12, /*->23151*/ |
| 12051 | /* 23139*/ OPC_CheckChild2CondCode, ISD::SETLE, |
| 12052 | /* 23141*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12053 | /* 23143*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_S_I8x16), 0, |
| 12054 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 12055 | // Src: (setcc:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs, SETLE:{ *:[Other] }) - Complexity = 3 |
| 12056 | // Dst: (LE_S_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 12057 | /* 23151*/ /*Scope*/ 12, /*->23164*/ |
| 12058 | /* 23152*/ OPC_CheckChild2CondCode, ISD::SETULE, |
| 12059 | /* 23154*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12060 | /* 23156*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_U_I8x16), 0, |
| 12061 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 12062 | // Src: (setcc:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs, SETULE:{ *:[Other] }) - Complexity = 3 |
| 12063 | // Dst: (LE_U_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 12064 | /* 23164*/ /*Scope*/ 12, /*->23177*/ |
| 12065 | /* 23165*/ OPC_CheckChild2CondCode, ISD::SETGE, |
| 12066 | /* 23167*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12067 | /* 23169*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_S_I8x16), 0, |
| 12068 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 12069 | // Src: (setcc:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs, SETGE:{ *:[Other] }) - Complexity = 3 |
| 12070 | // Dst: (GE_S_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 12071 | /* 23177*/ /*Scope*/ 12, /*->23190*/ |
| 12072 | /* 23178*/ OPC_CheckChild2CondCode, ISD::SETUGE, |
| 12073 | /* 23180*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12074 | /* 23182*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_U_I8x16), 0, |
| 12075 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 12076 | // Src: (setcc:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs, SETUGE:{ *:[Other] }) - Complexity = 3 |
| 12077 | // Dst: (GE_U_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 12078 | /* 23190*/ 0, /*End of Scope*/ |
| 12079 | /* 23191*/ /*SwitchType*/ 7|128,1/*135*/, MVT::v8i16,// ->23329 |
| 12080 | /* 23194*/ OPC_CheckChild0Type, MVT::v8i16, |
| 12081 | /* 23196*/ OPC_RecordChild1, // #1 = $rhs |
| 12082 | /* 23197*/ OPC_Scope, 12, /*->23211*/ // 10 children in Scope |
| 12083 | /* 23199*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 12084 | /* 23201*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12085 | /* 23203*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_I16x8), 0, |
| 12086 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 12087 | // Src: (setcc:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs, SETEQ:{ *:[Other] }) - Complexity = 3 |
| 12088 | // Dst: (EQ_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 12089 | /* 23211*/ /*Scope*/ 12, /*->23224*/ |
| 12090 | /* 23212*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 12091 | /* 23214*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12092 | /* 23216*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_I16x8), 0, |
| 12093 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 12094 | // Src: (setcc:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs, SETNE:{ *:[Other] }) - Complexity = 3 |
| 12095 | // Dst: (NE_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 12096 | /* 23224*/ /*Scope*/ 12, /*->23237*/ |
| 12097 | /* 23225*/ OPC_CheckChild2CondCode, ISD::SETLT, |
| 12098 | /* 23227*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12099 | /* 23229*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_S_I16x8), 0, |
| 12100 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 12101 | // Src: (setcc:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs, SETLT:{ *:[Other] }) - Complexity = 3 |
| 12102 | // Dst: (LT_S_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 12103 | /* 23237*/ /*Scope*/ 12, /*->23250*/ |
| 12104 | /* 23238*/ OPC_CheckChild2CondCode, ISD::SETULT, |
| 12105 | /* 23240*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12106 | /* 23242*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_U_I16x8), 0, |
| 12107 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 12108 | // Src: (setcc:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs, SETULT:{ *:[Other] }) - Complexity = 3 |
| 12109 | // Dst: (LT_U_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 12110 | /* 23250*/ /*Scope*/ 12, /*->23263*/ |
| 12111 | /* 23251*/ OPC_CheckChild2CondCode, ISD::SETGT, |
| 12112 | /* 23253*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12113 | /* 23255*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_S_I16x8), 0, |
| 12114 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 12115 | // Src: (setcc:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs, SETGT:{ *:[Other] }) - Complexity = 3 |
| 12116 | // Dst: (GT_S_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 12117 | /* 23263*/ /*Scope*/ 12, /*->23276*/ |
| 12118 | /* 23264*/ OPC_CheckChild2CondCode, ISD::SETUGT, |
| 12119 | /* 23266*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12120 | /* 23268*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_U_I16x8), 0, |
| 12121 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 12122 | // Src: (setcc:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs, SETUGT:{ *:[Other] }) - Complexity = 3 |
| 12123 | // Dst: (GT_U_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 12124 | /* 23276*/ /*Scope*/ 12, /*->23289*/ |
| 12125 | /* 23277*/ OPC_CheckChild2CondCode, ISD::SETLE, |
| 12126 | /* 23279*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12127 | /* 23281*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_S_I16x8), 0, |
| 12128 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 12129 | // Src: (setcc:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs, SETLE:{ *:[Other] }) - Complexity = 3 |
| 12130 | // Dst: (LE_S_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 12131 | /* 23289*/ /*Scope*/ 12, /*->23302*/ |
| 12132 | /* 23290*/ OPC_CheckChild2CondCode, ISD::SETULE, |
| 12133 | /* 23292*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12134 | /* 23294*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_U_I16x8), 0, |
| 12135 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 12136 | // Src: (setcc:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs, SETULE:{ *:[Other] }) - Complexity = 3 |
| 12137 | // Dst: (LE_U_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 12138 | /* 23302*/ /*Scope*/ 12, /*->23315*/ |
| 12139 | /* 23303*/ OPC_CheckChild2CondCode, ISD::SETGE, |
| 12140 | /* 23305*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12141 | /* 23307*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_S_I16x8), 0, |
| 12142 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 12143 | // Src: (setcc:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs, SETGE:{ *:[Other] }) - Complexity = 3 |
| 12144 | // Dst: (GE_S_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 12145 | /* 23315*/ /*Scope*/ 12, /*->23328*/ |
| 12146 | /* 23316*/ OPC_CheckChild2CondCode, ISD::SETUGE, |
| 12147 | /* 23318*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12148 | /* 23320*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_U_I16x8), 0, |
| 12149 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 12150 | // Src: (setcc:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs, SETUGE:{ *:[Other] }) - Complexity = 3 |
| 12151 | // Dst: (GE_U_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 12152 | /* 23328*/ 0, /*End of Scope*/ |
| 12153 | /* 23329*/ /*SwitchType*/ 34|128,2/*290*/, MVT::v4i32,// ->23622 |
| 12154 | /* 23332*/ OPC_Scope, 7|128,1/*135*/, /*->23470*/ // 2 children in Scope |
| 12155 | /* 23335*/ OPC_CheckChild0Type, MVT::v4i32, |
| 12156 | /* 23337*/ OPC_RecordChild1, // #1 = $rhs |
| 12157 | /* 23338*/ OPC_Scope, 12, /*->23352*/ // 10 children in Scope |
| 12158 | /* 23340*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 12159 | /* 23342*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12160 | /* 23344*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_I32x4), 0, |
| 12161 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12162 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs, SETEQ:{ *:[Other] }) - Complexity = 3 |
| 12163 | // Dst: (EQ_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 12164 | /* 23352*/ /*Scope*/ 12, /*->23365*/ |
| 12165 | /* 23353*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 12166 | /* 23355*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12167 | /* 23357*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_I32x4), 0, |
| 12168 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12169 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs, SETNE:{ *:[Other] }) - Complexity = 3 |
| 12170 | // Dst: (NE_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 12171 | /* 23365*/ /*Scope*/ 12, /*->23378*/ |
| 12172 | /* 23366*/ OPC_CheckChild2CondCode, ISD::SETLT, |
| 12173 | /* 23368*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12174 | /* 23370*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_S_I32x4), 0, |
| 12175 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12176 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs, SETLT:{ *:[Other] }) - Complexity = 3 |
| 12177 | // Dst: (LT_S_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 12178 | /* 23378*/ /*Scope*/ 12, /*->23391*/ |
| 12179 | /* 23379*/ OPC_CheckChild2CondCode, ISD::SETULT, |
| 12180 | /* 23381*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12181 | /* 23383*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_U_I32x4), 0, |
| 12182 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12183 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs, SETULT:{ *:[Other] }) - Complexity = 3 |
| 12184 | // Dst: (LT_U_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 12185 | /* 23391*/ /*Scope*/ 12, /*->23404*/ |
| 12186 | /* 23392*/ OPC_CheckChild2CondCode, ISD::SETGT, |
| 12187 | /* 23394*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12188 | /* 23396*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_S_I32x4), 0, |
| 12189 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12190 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs, SETGT:{ *:[Other] }) - Complexity = 3 |
| 12191 | // Dst: (GT_S_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 12192 | /* 23404*/ /*Scope*/ 12, /*->23417*/ |
| 12193 | /* 23405*/ OPC_CheckChild2CondCode, ISD::SETUGT, |
| 12194 | /* 23407*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12195 | /* 23409*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_U_I32x4), 0, |
| 12196 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12197 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs, SETUGT:{ *:[Other] }) - Complexity = 3 |
| 12198 | // Dst: (GT_U_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 12199 | /* 23417*/ /*Scope*/ 12, /*->23430*/ |
| 12200 | /* 23418*/ OPC_CheckChild2CondCode, ISD::SETLE, |
| 12201 | /* 23420*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12202 | /* 23422*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_S_I32x4), 0, |
| 12203 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12204 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs, SETLE:{ *:[Other] }) - Complexity = 3 |
| 12205 | // Dst: (LE_S_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 12206 | /* 23430*/ /*Scope*/ 12, /*->23443*/ |
| 12207 | /* 23431*/ OPC_CheckChild2CondCode, ISD::SETULE, |
| 12208 | /* 23433*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12209 | /* 23435*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_U_I32x4), 0, |
| 12210 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12211 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs, SETULE:{ *:[Other] }) - Complexity = 3 |
| 12212 | // Dst: (LE_U_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 12213 | /* 23443*/ /*Scope*/ 12, /*->23456*/ |
| 12214 | /* 23444*/ OPC_CheckChild2CondCode, ISD::SETGE, |
| 12215 | /* 23446*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12216 | /* 23448*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_S_I32x4), 0, |
| 12217 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12218 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs, SETGE:{ *:[Other] }) - Complexity = 3 |
| 12219 | // Dst: (GE_S_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 12220 | /* 23456*/ /*Scope*/ 12, /*->23469*/ |
| 12221 | /* 23457*/ OPC_CheckChild2CondCode, ISD::SETUGE, |
| 12222 | /* 23459*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12223 | /* 23461*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_U_I32x4), 0, |
| 12224 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12225 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs, SETUGE:{ *:[Other] }) - Complexity = 3 |
| 12226 | // Dst: (GE_U_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 12227 | /* 23469*/ 0, /*End of Scope*/ |
| 12228 | /* 23470*/ /*Scope*/ 21|128,1/*149*/, /*->23621*/ |
| 12229 | /* 23472*/ OPC_CheckChild0Type, MVT::v4f32, |
| 12230 | /* 23474*/ OPC_RecordChild1, // #1 = $rhs |
| 12231 | /* 23475*/ OPC_Scope, 12, /*->23489*/ // 12 children in Scope |
| 12232 | /* 23477*/ OPC_CheckChild2CondCode, ISD::SETOEQ, |
| 12233 | /* 23479*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12234 | /* 23481*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_F32x4), 0, |
| 12235 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12236 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs, SETOEQ:{ *:[Other] }) - Complexity = 3 |
| 12237 | // Dst: (EQ_F32x4:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 12238 | /* 23489*/ /*Scope*/ 12, /*->23502*/ |
| 12239 | /* 23490*/ OPC_CheckChild2CondCode, ISD::SETUNE, |
| 12240 | /* 23492*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12241 | /* 23494*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_F32x4), 0, |
| 12242 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12243 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs, SETUNE:{ *:[Other] }) - Complexity = 3 |
| 12244 | // Dst: (NE_F32x4:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 12245 | /* 23502*/ /*Scope*/ 12, /*->23515*/ |
| 12246 | /* 23503*/ OPC_CheckChild2CondCode, ISD::SETOLT, |
| 12247 | /* 23505*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12248 | /* 23507*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_F32x4), 0, |
| 12249 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12250 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs, SETOLT:{ *:[Other] }) - Complexity = 3 |
| 12251 | // Dst: (LT_F32x4:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 12252 | /* 23515*/ /*Scope*/ 12, /*->23528*/ |
| 12253 | /* 23516*/ OPC_CheckChild2CondCode, ISD::SETOGT, |
| 12254 | /* 23518*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12255 | /* 23520*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_F32x4), 0, |
| 12256 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12257 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs, SETOGT:{ *:[Other] }) - Complexity = 3 |
| 12258 | // Dst: (GT_F32x4:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 12259 | /* 23528*/ /*Scope*/ 12, /*->23541*/ |
| 12260 | /* 23529*/ OPC_CheckChild2CondCode, ISD::SETOLE, |
| 12261 | /* 23531*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12262 | /* 23533*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_F32x4), 0, |
| 12263 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12264 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs, SETOLE:{ *:[Other] }) - Complexity = 3 |
| 12265 | // Dst: (LE_F32x4:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 12266 | /* 23541*/ /*Scope*/ 12, /*->23554*/ |
| 12267 | /* 23542*/ OPC_CheckChild2CondCode, ISD::SETOGE, |
| 12268 | /* 23544*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12269 | /* 23546*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_F32x4), 0, |
| 12270 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12271 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs, SETOGE:{ *:[Other] }) - Complexity = 3 |
| 12272 | // Dst: (GE_F32x4:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 12273 | /* 23554*/ /*Scope*/ 10, /*->23565*/ |
| 12274 | /* 23555*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 12275 | /* 23557*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_F32x4), 0, |
| 12276 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12277 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs, SETEQ:{ *:[Other] }) - Complexity = 3 |
| 12278 | // Dst: (EQ_F32x4:{ *:[v4i32] } ?:{ *:[v4f32] }:$lhs, ?:{ *:[v4f32] }:$rhs) |
| 12279 | /* 23565*/ /*Scope*/ 10, /*->23576*/ |
| 12280 | /* 23566*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 12281 | /* 23568*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_F32x4), 0, |
| 12282 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12283 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs, SETNE:{ *:[Other] }) - Complexity = 3 |
| 12284 | // Dst: (NE_F32x4:{ *:[v4i32] } ?:{ *:[v4f32] }:$lhs, ?:{ *:[v4f32] }:$rhs) |
| 12285 | /* 23576*/ /*Scope*/ 10, /*->23587*/ |
| 12286 | /* 23577*/ OPC_CheckChild2CondCode, ISD::SETLT, |
| 12287 | /* 23579*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_F32x4), 0, |
| 12288 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12289 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs, SETLT:{ *:[Other] }) - Complexity = 3 |
| 12290 | // Dst: (LT_F32x4:{ *:[v4i32] } ?:{ *:[v4f32] }:$lhs, ?:{ *:[v4f32] }:$rhs) |
| 12291 | /* 23587*/ /*Scope*/ 10, /*->23598*/ |
| 12292 | /* 23588*/ OPC_CheckChild2CondCode, ISD::SETGT, |
| 12293 | /* 23590*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_F32x4), 0, |
| 12294 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12295 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs, SETGT:{ *:[Other] }) - Complexity = 3 |
| 12296 | // Dst: (GT_F32x4:{ *:[v4i32] } ?:{ *:[v4f32] }:$lhs, ?:{ *:[v4f32] }:$rhs) |
| 12297 | /* 23598*/ /*Scope*/ 10, /*->23609*/ |
| 12298 | /* 23599*/ OPC_CheckChild2CondCode, ISD::SETLE, |
| 12299 | /* 23601*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_F32x4), 0, |
| 12300 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12301 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs, SETLE:{ *:[Other] }) - Complexity = 3 |
| 12302 | // Dst: (LE_F32x4:{ *:[v4i32] } ?:{ *:[v4f32] }:$lhs, ?:{ *:[v4f32] }:$rhs) |
| 12303 | /* 23609*/ /*Scope*/ 10, /*->23620*/ |
| 12304 | /* 23610*/ OPC_CheckChild2CondCode, ISD::SETGE, |
| 12305 | /* 23612*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_F32x4), 0, |
| 12306 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 12307 | // Src: (setcc:{ *:[v4i32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs, SETGE:{ *:[Other] }) - Complexity = 3 |
| 12308 | // Dst: (GE_F32x4:{ *:[v4i32] } ?:{ *:[v4f32] }:$lhs, ?:{ *:[v4f32] }:$rhs) |
| 12309 | /* 23620*/ 0, /*End of Scope*/ |
| 12310 | /* 23621*/ 0, /*End of Scope*/ |
| 12311 | /* 23622*/ /*SwitchType*/ 21|128,1/*149*/, MVT::v2i64,// ->23774 |
| 12312 | /* 23625*/ OPC_CheckChild0Type, MVT::v2f64, |
| 12313 | /* 23627*/ OPC_RecordChild1, // #1 = $rhs |
| 12314 | /* 23628*/ OPC_Scope, 12, /*->23642*/ // 12 children in Scope |
| 12315 | /* 23630*/ OPC_CheckChild2CondCode, ISD::SETOEQ, |
| 12316 | /* 23632*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12317 | /* 23634*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_F64x2), 0, |
| 12318 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 12319 | // Src: (setcc:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs, SETOEQ:{ *:[Other] }) - Complexity = 3 |
| 12320 | // Dst: (EQ_F64x2:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 12321 | /* 23642*/ /*Scope*/ 12, /*->23655*/ |
| 12322 | /* 23643*/ OPC_CheckChild2CondCode, ISD::SETUNE, |
| 12323 | /* 23645*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12324 | /* 23647*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_F64x2), 0, |
| 12325 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 12326 | // Src: (setcc:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs, SETUNE:{ *:[Other] }) - Complexity = 3 |
| 12327 | // Dst: (NE_F64x2:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 12328 | /* 23655*/ /*Scope*/ 12, /*->23668*/ |
| 12329 | /* 23656*/ OPC_CheckChild2CondCode, ISD::SETOLT, |
| 12330 | /* 23658*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12331 | /* 23660*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_F64x2), 0, |
| 12332 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 12333 | // Src: (setcc:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs, SETOLT:{ *:[Other] }) - Complexity = 3 |
| 12334 | // Dst: (LT_F64x2:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 12335 | /* 23668*/ /*Scope*/ 12, /*->23681*/ |
| 12336 | /* 23669*/ OPC_CheckChild2CondCode, ISD::SETOGT, |
| 12337 | /* 23671*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12338 | /* 23673*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_F64x2), 0, |
| 12339 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 12340 | // Src: (setcc:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs, SETOGT:{ *:[Other] }) - Complexity = 3 |
| 12341 | // Dst: (GT_F64x2:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 12342 | /* 23681*/ /*Scope*/ 12, /*->23694*/ |
| 12343 | /* 23682*/ OPC_CheckChild2CondCode, ISD::SETOLE, |
| 12344 | /* 23684*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12345 | /* 23686*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_F64x2), 0, |
| 12346 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 12347 | // Src: (setcc:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs, SETOLE:{ *:[Other] }) - Complexity = 3 |
| 12348 | // Dst: (LE_F64x2:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 12349 | /* 23694*/ /*Scope*/ 12, /*->23707*/ |
| 12350 | /* 23695*/ OPC_CheckChild2CondCode, ISD::SETOGE, |
| 12351 | /* 23697*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 12352 | /* 23699*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_F64x2), 0, |
| 12353 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 12354 | // Src: (setcc:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs, SETOGE:{ *:[Other] }) - Complexity = 3 |
| 12355 | // Dst: (GE_F64x2:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 12356 | /* 23707*/ /*Scope*/ 10, /*->23718*/ |
| 12357 | /* 23708*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 12358 | /* 23710*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_F64x2), 0, |
| 12359 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 12360 | // Src: (setcc:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs, SETEQ:{ *:[Other] }) - Complexity = 3 |
| 12361 | // Dst: (EQ_F64x2:{ *:[v2i64] } ?:{ *:[v2f64] }:$lhs, ?:{ *:[v2f64] }:$rhs) |
| 12362 | /* 23718*/ /*Scope*/ 10, /*->23729*/ |
| 12363 | /* 23719*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 12364 | /* 23721*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NE_F64x2), 0, |
| 12365 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 12366 | // Src: (setcc:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs, SETNE:{ *:[Other] }) - Complexity = 3 |
| 12367 | // Dst: (NE_F64x2:{ *:[v2i64] } ?:{ *:[v2f64] }:$lhs, ?:{ *:[v2f64] }:$rhs) |
| 12368 | /* 23729*/ /*Scope*/ 10, /*->23740*/ |
| 12369 | /* 23730*/ OPC_CheckChild2CondCode, ISD::SETLT, |
| 12370 | /* 23732*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LT_F64x2), 0, |
| 12371 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 12372 | // Src: (setcc:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs, SETLT:{ *:[Other] }) - Complexity = 3 |
| 12373 | // Dst: (LT_F64x2:{ *:[v2i64] } ?:{ *:[v2f64] }:$lhs, ?:{ *:[v2f64] }:$rhs) |
| 12374 | /* 23740*/ /*Scope*/ 10, /*->23751*/ |
| 12375 | /* 23741*/ OPC_CheckChild2CondCode, ISD::SETGT, |
| 12376 | /* 23743*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GT_F64x2), 0, |
| 12377 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 12378 | // Src: (setcc:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs, SETGT:{ *:[Other] }) - Complexity = 3 |
| 12379 | // Dst: (GT_F64x2:{ *:[v2i64] } ?:{ *:[v2f64] }:$lhs, ?:{ *:[v2f64] }:$rhs) |
| 12380 | /* 23751*/ /*Scope*/ 10, /*->23762*/ |
| 12381 | /* 23752*/ OPC_CheckChild2CondCode, ISD::SETLE, |
| 12382 | /* 23754*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LE_F64x2), 0, |
| 12383 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 12384 | // Src: (setcc:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs, SETLE:{ *:[Other] }) - Complexity = 3 |
| 12385 | // Dst: (LE_F64x2:{ *:[v2i64] } ?:{ *:[v2f64] }:$lhs, ?:{ *:[v2f64] }:$rhs) |
| 12386 | /* 23762*/ /*Scope*/ 10, /*->23773*/ |
| 12387 | /* 23763*/ OPC_CheckChild2CondCode, ISD::SETGE, |
| 12388 | /* 23765*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GE_F64x2), 0, |
| 12389 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 12390 | // Src: (setcc:{ *:[v2i64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs, SETGE:{ *:[Other] }) - Complexity = 3 |
| 12391 | // Dst: (GE_F64x2:{ *:[v2i64] } ?:{ *:[v2f64] }:$lhs, ?:{ *:[v2f64] }:$rhs) |
| 12392 | /* 23773*/ 0, /*End of Scope*/ |
| 12393 | /* 23774*/ 0, // EndSwitchType |
| 12394 | /* 23775*/ 0, /*End of Scope*/ |
| 12395 | /* 23776*/ /*SwitchOpcode*/ 34|128,15/*1954*/, TARGET_VAL(ISD::INTRINSIC_W_CHAIN),// ->25734 |
| 12396 | /* 23780*/ OPC_Scope, 87|128,4/*599*/, /*->24382*/ // 3 children in Scope |
| 12397 | /* 23783*/ OPC_RecordMemRef, |
| 12398 | /* 23784*/ OPC_RecordNode, // #0 = 'intrinsic_w_chain' chained node |
| 12399 | /* 23785*/ OPC_Scope, 61|128,1/*189*/, /*->23977*/ // 3 children in Scope |
| 12400 | /* 23788*/ OPC_CheckChild1Integer, 43|128,67/*8619*/, |
| 12401 | /* 23791*/ OPC_MoveChild2, |
| 12402 | /* 23792*/ OPC_SwitchOpcode /*3 cases */, 55, TARGET_VAL(ISD::ADD),// ->23851 |
| 12403 | /* 23796*/ OPC_RecordChild0, // #1 = $addr |
| 12404 | /* 23797*/ OPC_RecordChild1, // #2 = $off |
| 12405 | /* 23798*/ OPC_MoveChild1, |
| 12406 | /* 23799*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12407 | /* 23802*/ OPC_MoveParent, |
| 12408 | /* 23803*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 12409 | /* 23805*/ OPC_SwitchType /*2 cases */, 20, MVT::i32,// ->23828 |
| 12410 | /* 23808*/ OPC_MoveParent, |
| 12411 | /* 23809*/ OPC_RecordChild3, // #3 = $count |
| 12412 | /* 23810*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12413 | /* 23812*/ OPC_EmitMergeInputChains1_0, |
| 12414 | /* 23813*/ OPC_EmitInteger, MVT::i32, 0, |
| 12415 | /* 23816*/ OPC_EmitConvertToTarget, 2, |
| 12416 | /* 23818*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_NOTIFY_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12417 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 12418 | // Src: (intrinsic_w_chain:{ *:[i32] } 8619:{ *:[iPTR] }, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, I32:{ *:[i32] }:$count) - Complexity = 15 |
| 12419 | // Dst: (MEMORY_ATOMIC_NOTIFY_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, I32:{ *:[i32] }:$count) |
| 12420 | /* 23828*/ /*SwitchType*/ 20, MVT::i64,// ->23850 |
| 12421 | /* 23830*/ OPC_MoveParent, |
| 12422 | /* 23831*/ OPC_RecordChild3, // #3 = $count |
| 12423 | /* 23832*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12424 | /* 23834*/ OPC_EmitMergeInputChains1_0, |
| 12425 | /* 23835*/ OPC_EmitInteger, MVT::i32, 0, |
| 12426 | /* 23838*/ OPC_EmitConvertToTarget, 2, |
| 12427 | /* 23840*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_NOTIFY_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12428 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 12429 | // Src: (intrinsic_w_chain:{ *:[i32] } 8619:{ *:[iPTR] }, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, I32:{ *:[i32] }:$count) - Complexity = 15 |
| 12430 | // Dst: (MEMORY_ATOMIC_NOTIFY_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, I32:{ *:[i32] }:$count) |
| 12431 | /* 23850*/ 0, // EndSwitchType |
| 12432 | /* 23851*/ /*SwitchOpcode*/ 55, TARGET_VAL(ISD::OR),// ->23909 |
| 12433 | /* 23854*/ OPC_RecordChild0, // #1 = $addr |
| 12434 | /* 23855*/ OPC_RecordChild1, // #2 = $off |
| 12435 | /* 23856*/ OPC_MoveChild1, |
| 12436 | /* 23857*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12437 | /* 23860*/ OPC_MoveParent, |
| 12438 | /* 23861*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 12439 | /* 23863*/ OPC_SwitchType /*2 cases */, 20, MVT::i32,// ->23886 |
| 12440 | /* 23866*/ OPC_MoveParent, |
| 12441 | /* 23867*/ OPC_RecordChild3, // #3 = $count |
| 12442 | /* 23868*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12443 | /* 23870*/ OPC_EmitMergeInputChains1_0, |
| 12444 | /* 23871*/ OPC_EmitInteger, MVT::i32, 0, |
| 12445 | /* 23874*/ OPC_EmitConvertToTarget, 2, |
| 12446 | /* 23876*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_NOTIFY_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12447 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 12448 | // Src: (intrinsic_w_chain:{ *:[i32] } 8619:{ *:[iPTR] }, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, I32:{ *:[i32] }:$count) - Complexity = 15 |
| 12449 | // Dst: (MEMORY_ATOMIC_NOTIFY_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, I32:{ *:[i32] }:$count) |
| 12450 | /* 23886*/ /*SwitchType*/ 20, MVT::i64,// ->23908 |
| 12451 | /* 23888*/ OPC_MoveParent, |
| 12452 | /* 23889*/ OPC_RecordChild3, // #3 = $count |
| 12453 | /* 23890*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12454 | /* 23892*/ OPC_EmitMergeInputChains1_0, |
| 12455 | /* 23893*/ OPC_EmitInteger, MVT::i32, 0, |
| 12456 | /* 23896*/ OPC_EmitConvertToTarget, 2, |
| 12457 | /* 23898*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_NOTIFY_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12458 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 12459 | // Src: (intrinsic_w_chain:{ *:[i32] } 8619:{ *:[iPTR] }, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, I32:{ *:[i32] }:$count) - Complexity = 15 |
| 12460 | // Dst: (MEMORY_ATOMIC_NOTIFY_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, I32:{ *:[i32] }:$count) |
| 12461 | /* 23908*/ 0, // EndSwitchType |
| 12462 | /* 23909*/ /*SwitchOpcode*/ 64, TARGET_VAL(WebAssemblyISD::Wrapper),// ->23976 |
| 12463 | /* 23912*/ OPC_RecordChild0, // #1 = $off |
| 12464 | /* 23913*/ OPC_MoveChild0, |
| 12465 | /* 23914*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 12466 | /* 23917*/ OPC_MoveParent, |
| 12467 | /* 23918*/ OPC_MoveParent, |
| 12468 | /* 23919*/ OPC_RecordChild3, // #2 = $count |
| 12469 | /* 23920*/ OPC_Scope, 26, /*->23948*/ // 2 children in Scope |
| 12470 | /* 23922*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 12471 | /* 23924*/ OPC_EmitMergeInputChains1_0, |
| 12472 | /* 23925*/ OPC_EmitInteger, MVT::i32, 0, |
| 12473 | /* 23928*/ OPC_EmitInteger, MVT::i32, 0, |
| 12474 | /* 23931*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 12475 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 12476 | /* 23938*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_NOTIFY_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12477 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 12478 | // Src: (intrinsic_w_chain:{ *:[i32] } 8619:{ *:[iPTR] }, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), I32:{ *:[i32] }:$count) - Complexity = 14 |
| 12479 | // Dst: (MEMORY_ATOMIC_NOTIFY_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), I32:{ *:[i32] }:$count) |
| 12480 | /* 23948*/ /*Scope*/ 26, /*->23975*/ |
| 12481 | /* 23949*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 12482 | /* 23951*/ OPC_EmitMergeInputChains1_0, |
| 12483 | /* 23952*/ OPC_EmitInteger, MVT::i32, 0, |
| 12484 | /* 23955*/ OPC_EmitInteger, MVT::i64, 0, |
| 12485 | /* 23958*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 12486 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 12487 | /* 23965*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_NOTIFY_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12488 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 12489 | // Src: (intrinsic_w_chain:{ *:[i32] } 8619:{ *:[iPTR] }, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), I32:{ *:[i32] }:$count) - Complexity = 14 |
| 12490 | // Dst: (MEMORY_ATOMIC_NOTIFY_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), I32:{ *:[i32] }:$count) |
| 12491 | /* 23975*/ 0, /*End of Scope*/ |
| 12492 | /* 23976*/ 0, // EndSwitchOpcode |
| 12493 | /* 23977*/ /*Scope*/ 72|128,1/*200*/, /*->24179*/ |
| 12494 | /* 23979*/ OPC_CheckChild1Integer, 44|128,67/*8620*/, |
| 12495 | /* 23982*/ OPC_MoveChild2, |
| 12496 | /* 23983*/ OPC_SwitchOpcode /*3 cases */, 59, TARGET_VAL(ISD::ADD),// ->24046 |
| 12497 | /* 23987*/ OPC_RecordChild0, // #1 = $addr |
| 12498 | /* 23988*/ OPC_RecordChild1, // #2 = $off |
| 12499 | /* 23989*/ OPC_MoveChild1, |
| 12500 | /* 23990*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12501 | /* 23993*/ OPC_MoveParent, |
| 12502 | /* 23994*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 12503 | /* 23996*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->24021 |
| 12504 | /* 23999*/ OPC_MoveParent, |
| 12505 | /* 24000*/ OPC_RecordChild3, // #3 = $exp |
| 12506 | /* 24001*/ OPC_RecordChild4, // #4 = $timeout |
| 12507 | /* 24002*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12508 | /* 24004*/ OPC_EmitMergeInputChains1_0, |
| 12509 | /* 24005*/ OPC_EmitInteger, MVT::i32, 0, |
| 12510 | /* 24008*/ OPC_EmitConvertToTarget, 2, |
| 12511 | /* 24010*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12512 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 12513 | // Src: (intrinsic_w_chain:{ *:[i32] } 8620:{ *:[iPTR] }, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 15 |
| 12514 | // Dst: (MEMORY_ATOMIC_WAIT32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12515 | /* 24021*/ /*SwitchType*/ 22, MVT::i64,// ->24045 |
| 12516 | /* 24023*/ OPC_MoveParent, |
| 12517 | /* 24024*/ OPC_RecordChild3, // #3 = $exp |
| 12518 | /* 24025*/ OPC_RecordChild4, // #4 = $timeout |
| 12519 | /* 24026*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12520 | /* 24028*/ OPC_EmitMergeInputChains1_0, |
| 12521 | /* 24029*/ OPC_EmitInteger, MVT::i32, 0, |
| 12522 | /* 24032*/ OPC_EmitConvertToTarget, 2, |
| 12523 | /* 24034*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12524 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 12525 | // Src: (intrinsic_w_chain:{ *:[i32] } 8620:{ *:[iPTR] }, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 15 |
| 12526 | // Dst: (MEMORY_ATOMIC_WAIT32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12527 | /* 24045*/ 0, // EndSwitchType |
| 12528 | /* 24046*/ /*SwitchOpcode*/ 59, TARGET_VAL(ISD::OR),// ->24108 |
| 12529 | /* 24049*/ OPC_RecordChild0, // #1 = $addr |
| 12530 | /* 24050*/ OPC_RecordChild1, // #2 = $off |
| 12531 | /* 24051*/ OPC_MoveChild1, |
| 12532 | /* 24052*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12533 | /* 24055*/ OPC_MoveParent, |
| 12534 | /* 24056*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 12535 | /* 24058*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->24083 |
| 12536 | /* 24061*/ OPC_MoveParent, |
| 12537 | /* 24062*/ OPC_RecordChild3, // #3 = $exp |
| 12538 | /* 24063*/ OPC_RecordChild4, // #4 = $timeout |
| 12539 | /* 24064*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12540 | /* 24066*/ OPC_EmitMergeInputChains1_0, |
| 12541 | /* 24067*/ OPC_EmitInteger, MVT::i32, 0, |
| 12542 | /* 24070*/ OPC_EmitConvertToTarget, 2, |
| 12543 | /* 24072*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12544 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 12545 | // Src: (intrinsic_w_chain:{ *:[i32] } 8620:{ *:[iPTR] }, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 15 |
| 12546 | // Dst: (MEMORY_ATOMIC_WAIT32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12547 | /* 24083*/ /*SwitchType*/ 22, MVT::i64,// ->24107 |
| 12548 | /* 24085*/ OPC_MoveParent, |
| 12549 | /* 24086*/ OPC_RecordChild3, // #3 = $exp |
| 12550 | /* 24087*/ OPC_RecordChild4, // #4 = $timeout |
| 12551 | /* 24088*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12552 | /* 24090*/ OPC_EmitMergeInputChains1_0, |
| 12553 | /* 24091*/ OPC_EmitInteger, MVT::i32, 0, |
| 12554 | /* 24094*/ OPC_EmitConvertToTarget, 2, |
| 12555 | /* 24096*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12556 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 12557 | // Src: (intrinsic_w_chain:{ *:[i32] } 8620:{ *:[iPTR] }, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 15 |
| 12558 | // Dst: (MEMORY_ATOMIC_WAIT32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12559 | /* 24107*/ 0, // EndSwitchType |
| 12560 | /* 24108*/ /*SwitchOpcode*/ 67, TARGET_VAL(WebAssemblyISD::Wrapper),// ->24178 |
| 12561 | /* 24111*/ OPC_RecordChild0, // #1 = $off |
| 12562 | /* 24112*/ OPC_MoveChild0, |
| 12563 | /* 24113*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 12564 | /* 24116*/ OPC_MoveParent, |
| 12565 | /* 24117*/ OPC_MoveParent, |
| 12566 | /* 24118*/ OPC_RecordChild3, // #2 = $exp |
| 12567 | /* 24119*/ OPC_RecordChild4, // #3 = $timeout |
| 12568 | /* 24120*/ OPC_Scope, 27, /*->24149*/ // 2 children in Scope |
| 12569 | /* 24122*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 12570 | /* 24124*/ OPC_EmitMergeInputChains1_0, |
| 12571 | /* 24125*/ OPC_EmitInteger, MVT::i32, 0, |
| 12572 | /* 24128*/ OPC_EmitInteger, MVT::i32, 0, |
| 12573 | /* 24131*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 12574 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 12575 | /* 24138*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12576 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 12577 | // Src: (intrinsic_w_chain:{ *:[i32] } 8620:{ *:[iPTR] }, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 14 |
| 12578 | // Dst: (MEMORY_ATOMIC_WAIT32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12579 | /* 24149*/ /*Scope*/ 27, /*->24177*/ |
| 12580 | /* 24150*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 12581 | /* 24152*/ OPC_EmitMergeInputChains1_0, |
| 12582 | /* 24153*/ OPC_EmitInteger, MVT::i32, 0, |
| 12583 | /* 24156*/ OPC_EmitInteger, MVT::i64, 0, |
| 12584 | /* 24159*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 12585 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 12586 | /* 24166*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12587 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 12588 | // Src: (intrinsic_w_chain:{ *:[i32] } 8620:{ *:[iPTR] }, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 14 |
| 12589 | // Dst: (MEMORY_ATOMIC_WAIT32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12590 | /* 24177*/ 0, /*End of Scope*/ |
| 12591 | /* 24178*/ 0, // EndSwitchOpcode |
| 12592 | /* 24179*/ /*Scope*/ 72|128,1/*200*/, /*->24381*/ |
| 12593 | /* 24181*/ OPC_CheckChild1Integer, 45|128,67/*8621*/, |
| 12594 | /* 24184*/ OPC_MoveChild2, |
| 12595 | /* 24185*/ OPC_SwitchOpcode /*3 cases */, 59, TARGET_VAL(ISD::ADD),// ->24248 |
| 12596 | /* 24189*/ OPC_RecordChild0, // #1 = $addr |
| 12597 | /* 24190*/ OPC_RecordChild1, // #2 = $off |
| 12598 | /* 24191*/ OPC_MoveChild1, |
| 12599 | /* 24192*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12600 | /* 24195*/ OPC_MoveParent, |
| 12601 | /* 24196*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 12602 | /* 24198*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->24223 |
| 12603 | /* 24201*/ OPC_MoveParent, |
| 12604 | /* 24202*/ OPC_RecordChild3, // #3 = $exp |
| 12605 | /* 24203*/ OPC_RecordChild4, // #4 = $timeout |
| 12606 | /* 24204*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12607 | /* 24206*/ OPC_EmitMergeInputChains1_0, |
| 12608 | /* 24207*/ OPC_EmitInteger, MVT::i32, 0, |
| 12609 | /* 24210*/ OPC_EmitConvertToTarget, 2, |
| 12610 | /* 24212*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12611 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 12612 | // Src: (intrinsic_w_chain:{ *:[i32] } 8621:{ *:[iPTR] }, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 15 |
| 12613 | // Dst: (MEMORY_ATOMIC_WAIT64_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12614 | /* 24223*/ /*SwitchType*/ 22, MVT::i64,// ->24247 |
| 12615 | /* 24225*/ OPC_MoveParent, |
| 12616 | /* 24226*/ OPC_RecordChild3, // #3 = $exp |
| 12617 | /* 24227*/ OPC_RecordChild4, // #4 = $timeout |
| 12618 | /* 24228*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12619 | /* 24230*/ OPC_EmitMergeInputChains1_0, |
| 12620 | /* 24231*/ OPC_EmitInteger, MVT::i32, 0, |
| 12621 | /* 24234*/ OPC_EmitConvertToTarget, 2, |
| 12622 | /* 24236*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12623 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 12624 | // Src: (intrinsic_w_chain:{ *:[i32] } 8621:{ *:[iPTR] }, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 15 |
| 12625 | // Dst: (MEMORY_ATOMIC_WAIT64_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12626 | /* 24247*/ 0, // EndSwitchType |
| 12627 | /* 24248*/ /*SwitchOpcode*/ 59, TARGET_VAL(ISD::OR),// ->24310 |
| 12628 | /* 24251*/ OPC_RecordChild0, // #1 = $addr |
| 12629 | /* 24252*/ OPC_RecordChild1, // #2 = $off |
| 12630 | /* 24253*/ OPC_MoveChild1, |
| 12631 | /* 24254*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12632 | /* 24257*/ OPC_MoveParent, |
| 12633 | /* 24258*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 12634 | /* 24260*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->24285 |
| 12635 | /* 24263*/ OPC_MoveParent, |
| 12636 | /* 24264*/ OPC_RecordChild3, // #3 = $exp |
| 12637 | /* 24265*/ OPC_RecordChild4, // #4 = $timeout |
| 12638 | /* 24266*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12639 | /* 24268*/ OPC_EmitMergeInputChains1_0, |
| 12640 | /* 24269*/ OPC_EmitInteger, MVT::i32, 0, |
| 12641 | /* 24272*/ OPC_EmitConvertToTarget, 2, |
| 12642 | /* 24274*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12643 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 12644 | // Src: (intrinsic_w_chain:{ *:[i32] } 8621:{ *:[iPTR] }, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 15 |
| 12645 | // Dst: (MEMORY_ATOMIC_WAIT64_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12646 | /* 24285*/ /*SwitchType*/ 22, MVT::i64,// ->24309 |
| 12647 | /* 24287*/ OPC_MoveParent, |
| 12648 | /* 24288*/ OPC_RecordChild3, // #3 = $exp |
| 12649 | /* 24289*/ OPC_RecordChild4, // #4 = $timeout |
| 12650 | /* 24290*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12651 | /* 24292*/ OPC_EmitMergeInputChains1_0, |
| 12652 | /* 24293*/ OPC_EmitInteger, MVT::i32, 0, |
| 12653 | /* 24296*/ OPC_EmitConvertToTarget, 2, |
| 12654 | /* 24298*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12655 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 12656 | // Src: (intrinsic_w_chain:{ *:[i32] } 8621:{ *:[iPTR] }, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 15 |
| 12657 | // Dst: (MEMORY_ATOMIC_WAIT64_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12658 | /* 24309*/ 0, // EndSwitchType |
| 12659 | /* 24310*/ /*SwitchOpcode*/ 67, TARGET_VAL(WebAssemblyISD::Wrapper),// ->24380 |
| 12660 | /* 24313*/ OPC_RecordChild0, // #1 = $off |
| 12661 | /* 24314*/ OPC_MoveChild0, |
| 12662 | /* 24315*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 12663 | /* 24318*/ OPC_MoveParent, |
| 12664 | /* 24319*/ OPC_MoveParent, |
| 12665 | /* 24320*/ OPC_RecordChild3, // #2 = $exp |
| 12666 | /* 24321*/ OPC_RecordChild4, // #3 = $timeout |
| 12667 | /* 24322*/ OPC_Scope, 27, /*->24351*/ // 2 children in Scope |
| 12668 | /* 24324*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 12669 | /* 24326*/ OPC_EmitMergeInputChains1_0, |
| 12670 | /* 24327*/ OPC_EmitInteger, MVT::i32, 0, |
| 12671 | /* 24330*/ OPC_EmitInteger, MVT::i32, 0, |
| 12672 | /* 24333*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 12673 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 12674 | /* 24340*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12675 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 12676 | // Src: (intrinsic_w_chain:{ *:[i32] } 8621:{ *:[iPTR] }, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 14 |
| 12677 | // Dst: (MEMORY_ATOMIC_WAIT64_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12678 | /* 24351*/ /*Scope*/ 27, /*->24379*/ |
| 12679 | /* 24352*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 12680 | /* 24354*/ OPC_EmitMergeInputChains1_0, |
| 12681 | /* 24355*/ OPC_EmitInteger, MVT::i32, 0, |
| 12682 | /* 24358*/ OPC_EmitInteger, MVT::i64, 0, |
| 12683 | /* 24361*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 12684 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 12685 | /* 24368*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12686 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 12687 | // Src: (intrinsic_w_chain:{ *:[i32] } 8621:{ *:[iPTR] }, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 14 |
| 12688 | // Dst: (MEMORY_ATOMIC_WAIT64_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12689 | /* 24379*/ 0, /*End of Scope*/ |
| 12690 | /* 24380*/ 0, // EndSwitchOpcode |
| 12691 | /* 24381*/ 0, /*End of Scope*/ |
| 12692 | /* 24382*/ /*Scope*/ 82, /*->24465*/ |
| 12693 | /* 24383*/ OPC_RecordNode, // #0 = 'intrinsic_w_chain' chained node |
| 12694 | /* 24384*/ OPC_Scope, 35, /*->24421*/ // 2 children in Scope |
| 12695 | /* 24386*/ OPC_CheckChild1Integer, 47|128,67/*8623*/, |
| 12696 | /* 24389*/ OPC_RecordChild2, // #1 = $flags |
| 12697 | /* 24390*/ OPC_MoveChild2, |
| 12698 | /* 24391*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12699 | /* 24394*/ OPC_MoveParent, |
| 12700 | /* 24395*/ OPC_SwitchType /*2 cases */, 10, MVT::i32,// ->24408 |
| 12701 | /* 24398*/ OPC_EmitMergeInputChains1_0, |
| 12702 | /* 24399*/ OPC_EmitConvertToTarget, 1, |
| 12703 | /* 24401*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::anonymous_2715MEMORY_SIZE_A32), 0|OPFL_Chain, |
| 12704 | MVT::i32, 1/*#Ops*/, 2, |
| 12705 | // Src: (intrinsic_w_chain:{ *:[i32] } 8623:{ *:[iPTR] }, (imm:{ *:[i32] }):$flags) - Complexity = 11 |
| 12706 | // Dst: (anonymous_2715MEMORY_SIZE_A32:{ *:[i32] } (imm:{ *:[i32] }):$flags) |
| 12707 | /* 24408*/ /*SwitchType*/ 10, MVT::i64,// ->24420 |
| 12708 | /* 24410*/ OPC_EmitMergeInputChains1_0, |
| 12709 | /* 24411*/ OPC_EmitConvertToTarget, 1, |
| 12710 | /* 24413*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::anonymous_2716MEMORY_SIZE_A64), 0|OPFL_Chain, |
| 12711 | MVT::i64, 1/*#Ops*/, 2, |
| 12712 | // Src: (intrinsic_w_chain:{ *:[i64] } 8623:{ *:[iPTR] }, (imm:{ *:[i32] }):$flags) - Complexity = 11 |
| 12713 | // Dst: (anonymous_2716MEMORY_SIZE_A64:{ *:[i64] } (imm:{ *:[i32] }):$flags) |
| 12714 | /* 24420*/ 0, // EndSwitchType |
| 12715 | /* 24421*/ /*Scope*/ 42, /*->24464*/ |
| 12716 | /* 24422*/ OPC_CheckChild1Integer, 46|128,67/*8622*/, |
| 12717 | /* 24425*/ OPC_RecordChild2, // #1 = $flags |
| 12718 | /* 24426*/ OPC_MoveChild2, |
| 12719 | /* 24427*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12720 | /* 24430*/ OPC_MoveParent, |
| 12721 | /* 24431*/ OPC_RecordChild3, // #2 = $delta |
| 12722 | /* 24432*/ OPC_SwitchType /*2 cases */, 13, MVT::i32,// ->24448 |
| 12723 | /* 24435*/ OPC_CheckChild3Type, MVT::i32, |
| 12724 | /* 24437*/ OPC_EmitMergeInputChains1_0, |
| 12725 | /* 24438*/ OPC_EmitConvertToTarget, 1, |
| 12726 | /* 24440*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::anonymous_2715MEMORY_GROW_A32), 0|OPFL_Chain, |
| 12727 | MVT::i32, 2/*#Ops*/, 3, 2, |
| 12728 | // Src: (intrinsic_w_chain:{ *:[i32] } 8622:{ *:[iPTR] }, (imm:{ *:[i32] }):$flags, I32:{ *:[i32] }:$delta) - Complexity = 11 |
| 12729 | // Dst: (anonymous_2715MEMORY_GROW_A32:{ *:[i32] } (imm:{ *:[i32] }):$flags, I32:{ *:[i32] }:$delta) |
| 12730 | /* 24448*/ /*SwitchType*/ 13, MVT::i64,// ->24463 |
| 12731 | /* 24450*/ OPC_CheckChild3Type, MVT::i64, |
| 12732 | /* 24452*/ OPC_EmitMergeInputChains1_0, |
| 12733 | /* 24453*/ OPC_EmitConvertToTarget, 1, |
| 12734 | /* 24455*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::anonymous_2716MEMORY_GROW_A64), 0|OPFL_Chain, |
| 12735 | MVT::i64, 2/*#Ops*/, 3, 2, |
| 12736 | // Src: (intrinsic_w_chain:{ *:[i64] } 8622:{ *:[iPTR] }, (imm:{ *:[i32] }):$flags, I64:{ *:[i64] }:$delta) - Complexity = 11 |
| 12737 | // Dst: (anonymous_2716MEMORY_GROW_A64:{ *:[i64] } (imm:{ *:[i32] }):$flags, I64:{ *:[i64] }:$delta) |
| 12738 | /* 24463*/ 0, // EndSwitchType |
| 12739 | /* 24464*/ 0, /*End of Scope*/ |
| 12740 | /* 24465*/ /*Scope*/ 114|128,9/*1266*/, /*->25733*/ |
| 12741 | /* 24467*/ OPC_RecordMemRef, |
| 12742 | /* 24468*/ OPC_RecordNode, // #0 = 'intrinsic_w_chain' chained node |
| 12743 | /* 24469*/ OPC_Scope, 119, /*->24590*/ // 9 children in Scope |
| 12744 | /* 24471*/ OPC_CheckChild1Integer, 43|128,67/*8619*/, |
| 12745 | /* 24474*/ OPC_RecordChild2, // #1 = $off |
| 12746 | /* 24475*/ OPC_Scope, 66, /*->24543*/ // 3 children in Scope |
| 12747 | /* 24477*/ OPC_MoveChild2, |
| 12748 | /* 24478*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12749 | /* 24481*/ OPC_MoveParent, |
| 12750 | /* 24482*/ OPC_RecordChild3, // #2 = $count |
| 12751 | /* 24483*/ OPC_Scope, 28, /*->24513*/ // 2 children in Scope |
| 12752 | /* 24485*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12753 | /* 24487*/ OPC_EmitMergeInputChains1_0, |
| 12754 | /* 24488*/ OPC_EmitInteger, MVT::i32, 0, |
| 12755 | /* 24491*/ OPC_EmitConvertToTarget, 1, |
| 12756 | /* 24493*/ OPC_EmitInteger, MVT::i32, 0, |
| 12757 | /* 24496*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 12758 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 12759 | /* 24503*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_NOTIFY_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12760 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 12761 | // Src: (intrinsic_w_chain:{ *:[i32] } 8619:{ *:[iPTR] }, (imm:{ *:[iPTR] }):$off, I32:{ *:[i32] }:$count) - Complexity = 11 |
| 12762 | // Dst: (MEMORY_ATOMIC_NOTIFY_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), I32:{ *:[i32] }:$count) |
| 12763 | /* 24513*/ /*Scope*/ 28, /*->24542*/ |
| 12764 | /* 24514*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12765 | /* 24516*/ OPC_EmitMergeInputChains1_0, |
| 12766 | /* 24517*/ OPC_EmitInteger, MVT::i32, 0, |
| 12767 | /* 24520*/ OPC_EmitConvertToTarget, 1, |
| 12768 | /* 24522*/ OPC_EmitInteger, MVT::i64, 0, |
| 12769 | /* 24525*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 12770 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 12771 | /* 24532*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_NOTIFY_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12772 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 12773 | // Src: (intrinsic_w_chain:{ *:[i32] } 8619:{ *:[iPTR] }, (imm:{ *:[iPTR] }):$off, I32:{ *:[i32] }:$count) - Complexity = 11 |
| 12774 | // Dst: (MEMORY_ATOMIC_NOTIFY_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), I32:{ *:[i32] }:$count) |
| 12775 | /* 24542*/ 0, /*End of Scope*/ |
| 12776 | /* 24543*/ /*Scope*/ 22, /*->24566*/ |
| 12777 | /* 24544*/ OPC_CheckChild2Type, MVT::i32, |
| 12778 | /* 24546*/ OPC_RecordChild3, // #2 = $count |
| 12779 | /* 24547*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12780 | /* 24549*/ OPC_EmitMergeInputChains1_0, |
| 12781 | /* 24550*/ OPC_EmitInteger, MVT::i32, 0, |
| 12782 | /* 24553*/ OPC_EmitInteger, MVT::i32, 0, |
| 12783 | /* 24556*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_NOTIFY_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12784 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 12785 | // Src: (intrinsic_w_chain:{ *:[i32] } 8619:{ *:[iPTR] }, I32:{ *:[i32] }:$addr, I32:{ *:[i32] }:$count) - Complexity = 8 |
| 12786 | // Dst: (MEMORY_ATOMIC_NOTIFY_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, I32:{ *:[i32] }:$count) |
| 12787 | /* 24566*/ /*Scope*/ 22, /*->24589*/ |
| 12788 | /* 24567*/ OPC_CheckChild2Type, MVT::i64, |
| 12789 | /* 24569*/ OPC_RecordChild3, // #2 = $count |
| 12790 | /* 24570*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12791 | /* 24572*/ OPC_EmitMergeInputChains1_0, |
| 12792 | /* 24573*/ OPC_EmitInteger, MVT::i32, 0, |
| 12793 | /* 24576*/ OPC_EmitInteger, MVT::i64, 0, |
| 12794 | /* 24579*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_NOTIFY_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12795 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 12796 | // Src: (intrinsic_w_chain:{ *:[i32] } 8619:{ *:[iPTR] }, I64:{ *:[i64] }:$addr, I32:{ *:[i32] }:$count) - Complexity = 8 |
| 12797 | // Dst: (MEMORY_ATOMIC_NOTIFY_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, I32:{ *:[i32] }:$count) |
| 12798 | /* 24589*/ 0, /*End of Scope*/ |
| 12799 | /* 24590*/ /*Scope*/ 126, /*->24717*/ |
| 12800 | /* 24591*/ OPC_CheckChild1Integer, 44|128,67/*8620*/, |
| 12801 | /* 24594*/ OPC_RecordChild2, // #1 = $off |
| 12802 | /* 24595*/ OPC_Scope, 69, /*->24666*/ // 3 children in Scope |
| 12803 | /* 24597*/ OPC_MoveChild2, |
| 12804 | /* 24598*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12805 | /* 24601*/ OPC_MoveParent, |
| 12806 | /* 24602*/ OPC_RecordChild3, // #2 = $exp |
| 12807 | /* 24603*/ OPC_RecordChild4, // #3 = $timeout |
| 12808 | /* 24604*/ OPC_Scope, 29, /*->24635*/ // 2 children in Scope |
| 12809 | /* 24606*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12810 | /* 24608*/ OPC_EmitMergeInputChains1_0, |
| 12811 | /* 24609*/ OPC_EmitInteger, MVT::i32, 0, |
| 12812 | /* 24612*/ OPC_EmitConvertToTarget, 1, |
| 12813 | /* 24614*/ OPC_EmitInteger, MVT::i32, 0, |
| 12814 | /* 24617*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 12815 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 12816 | /* 24624*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12817 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 12818 | // Src: (intrinsic_w_chain:{ *:[i32] } 8620:{ *:[iPTR] }, (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 11 |
| 12819 | // Dst: (MEMORY_ATOMIC_WAIT32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12820 | /* 24635*/ /*Scope*/ 29, /*->24665*/ |
| 12821 | /* 24636*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12822 | /* 24638*/ OPC_EmitMergeInputChains1_0, |
| 12823 | /* 24639*/ OPC_EmitInteger, MVT::i32, 0, |
| 12824 | /* 24642*/ OPC_EmitConvertToTarget, 1, |
| 12825 | /* 24644*/ OPC_EmitInteger, MVT::i64, 0, |
| 12826 | /* 24647*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 12827 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 12828 | /* 24654*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12829 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 12830 | // Src: (intrinsic_w_chain:{ *:[i32] } 8620:{ *:[iPTR] }, (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 11 |
| 12831 | // Dst: (MEMORY_ATOMIC_WAIT32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12832 | /* 24665*/ 0, /*End of Scope*/ |
| 12833 | /* 24666*/ /*Scope*/ 24, /*->24691*/ |
| 12834 | /* 24667*/ OPC_CheckChild2Type, MVT::i32, |
| 12835 | /* 24669*/ OPC_RecordChild3, // #2 = $exp |
| 12836 | /* 24670*/ OPC_RecordChild4, // #3 = $timeout |
| 12837 | /* 24671*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12838 | /* 24673*/ OPC_EmitMergeInputChains1_0, |
| 12839 | /* 24674*/ OPC_EmitInteger, MVT::i32, 0, |
| 12840 | /* 24677*/ OPC_EmitInteger, MVT::i32, 0, |
| 12841 | /* 24680*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12842 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 12843 | // Src: (intrinsic_w_chain:{ *:[i32] } 8620:{ *:[iPTR] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 8 |
| 12844 | // Dst: (MEMORY_ATOMIC_WAIT32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12845 | /* 24691*/ /*Scope*/ 24, /*->24716*/ |
| 12846 | /* 24692*/ OPC_CheckChild2Type, MVT::i64, |
| 12847 | /* 24694*/ OPC_RecordChild3, // #2 = $exp |
| 12848 | /* 24695*/ OPC_RecordChild4, // #3 = $timeout |
| 12849 | /* 24696*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12850 | /* 24698*/ OPC_EmitMergeInputChains1_0, |
| 12851 | /* 24699*/ OPC_EmitInteger, MVT::i32, 0, |
| 12852 | /* 24702*/ OPC_EmitInteger, MVT::i64, 0, |
| 12853 | /* 24705*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12854 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 12855 | // Src: (intrinsic_w_chain:{ *:[i32] } 8620:{ *:[iPTR] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 8 |
| 12856 | // Dst: (MEMORY_ATOMIC_WAIT32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12857 | /* 24716*/ 0, /*End of Scope*/ |
| 12858 | /* 24717*/ /*Scope*/ 126, /*->24844*/ |
| 12859 | /* 24718*/ OPC_CheckChild1Integer, 45|128,67/*8621*/, |
| 12860 | /* 24721*/ OPC_RecordChild2, // #1 = $off |
| 12861 | /* 24722*/ OPC_Scope, 69, /*->24793*/ // 3 children in Scope |
| 12862 | /* 24724*/ OPC_MoveChild2, |
| 12863 | /* 24725*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12864 | /* 24728*/ OPC_MoveParent, |
| 12865 | /* 24729*/ OPC_RecordChild3, // #2 = $exp |
| 12866 | /* 24730*/ OPC_RecordChild4, // #3 = $timeout |
| 12867 | /* 24731*/ OPC_Scope, 29, /*->24762*/ // 2 children in Scope |
| 12868 | /* 24733*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12869 | /* 24735*/ OPC_EmitMergeInputChains1_0, |
| 12870 | /* 24736*/ OPC_EmitInteger, MVT::i32, 0, |
| 12871 | /* 24739*/ OPC_EmitConvertToTarget, 1, |
| 12872 | /* 24741*/ OPC_EmitInteger, MVT::i32, 0, |
| 12873 | /* 24744*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 12874 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 12875 | /* 24751*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12876 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 12877 | // Src: (intrinsic_w_chain:{ *:[i32] } 8621:{ *:[iPTR] }, (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 11 |
| 12878 | // Dst: (MEMORY_ATOMIC_WAIT64_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12879 | /* 24762*/ /*Scope*/ 29, /*->24792*/ |
| 12880 | /* 24763*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12881 | /* 24765*/ OPC_EmitMergeInputChains1_0, |
| 12882 | /* 24766*/ OPC_EmitInteger, MVT::i32, 0, |
| 12883 | /* 24769*/ OPC_EmitConvertToTarget, 1, |
| 12884 | /* 24771*/ OPC_EmitInteger, MVT::i64, 0, |
| 12885 | /* 24774*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 12886 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 12887 | /* 24781*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12888 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 12889 | // Src: (intrinsic_w_chain:{ *:[i32] } 8621:{ *:[iPTR] }, (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 11 |
| 12890 | // Dst: (MEMORY_ATOMIC_WAIT64_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12891 | /* 24792*/ 0, /*End of Scope*/ |
| 12892 | /* 24793*/ /*Scope*/ 24, /*->24818*/ |
| 12893 | /* 24794*/ OPC_CheckChild2Type, MVT::i32, |
| 12894 | /* 24796*/ OPC_RecordChild3, // #2 = $exp |
| 12895 | /* 24797*/ OPC_RecordChild4, // #3 = $timeout |
| 12896 | /* 24798*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12897 | /* 24800*/ OPC_EmitMergeInputChains1_0, |
| 12898 | /* 24801*/ OPC_EmitInteger, MVT::i32, 0, |
| 12899 | /* 24804*/ OPC_EmitInteger, MVT::i32, 0, |
| 12900 | /* 24807*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12901 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 12902 | // Src: (intrinsic_w_chain:{ *:[i32] } 8621:{ *:[iPTR] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 8 |
| 12903 | // Dst: (MEMORY_ATOMIC_WAIT64_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12904 | /* 24818*/ /*Scope*/ 24, /*->24843*/ |
| 12905 | /* 24819*/ OPC_CheckChild2Type, MVT::i64, |
| 12906 | /* 24821*/ OPC_RecordChild3, // #2 = $exp |
| 12907 | /* 24822*/ OPC_RecordChild4, // #3 = $timeout |
| 12908 | /* 24823*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 12909 | /* 24825*/ OPC_EmitMergeInputChains1_0, |
| 12910 | /* 24826*/ OPC_EmitInteger, MVT::i32, 0, |
| 12911 | /* 24829*/ OPC_EmitInteger, MVT::i64, 0, |
| 12912 | /* 24832*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12913 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 12914 | // Src: (intrinsic_w_chain:{ *:[i32] } 8621:{ *:[iPTR] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) - Complexity = 8 |
| 12915 | // Dst: (MEMORY_ATOMIC_WAIT64_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, I64:{ *:[i64] }:$timeout) |
| 12916 | /* 24843*/ 0, /*End of Scope*/ |
| 12917 | /* 24844*/ /*Scope*/ 36|128,2/*292*/, /*->25138*/ |
| 12918 | /* 24846*/ OPC_CheckChild1Integer, 38|128,67/*8614*/, |
| 12919 | /* 24849*/ OPC_Scope, 47|128,1/*175*/, /*->25027*/ // 2 children in Scope |
| 12920 | /* 24852*/ OPC_MoveChild2, |
| 12921 | /* 24853*/ OPC_SwitchOpcode /*3 cases */, 51, TARGET_VAL(ISD::ADD),// ->24908 |
| 12922 | /* 24857*/ OPC_RecordChild0, // #1 = $addr |
| 12923 | /* 24858*/ OPC_RecordChild1, // #2 = $off |
| 12924 | /* 24859*/ OPC_MoveChild1, |
| 12925 | /* 24860*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12926 | /* 24863*/ OPC_MoveParent, |
| 12927 | /* 24864*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 12928 | /* 24866*/ OPC_SwitchType /*2 cases */, 18, MVT::i32,// ->24887 |
| 12929 | /* 24869*/ OPC_MoveParent, |
| 12930 | /* 24870*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 12931 | /* 24872*/ OPC_EmitMergeInputChains1_0, |
| 12932 | /* 24873*/ OPC_EmitInteger, MVT::i32, 0, |
| 12933 | /* 24876*/ OPC_EmitConvertToTarget, 2, |
| 12934 | /* 24878*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12935 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 12936 | // Src: (intrinsic_w_chain:{ *:[v4i32] } 8614:{ *:[iPTR] }, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 15 |
| 12937 | // Dst: (LOAD_ZERO_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 12938 | /* 24887*/ /*SwitchType*/ 18, MVT::i64,// ->24907 |
| 12939 | /* 24889*/ OPC_MoveParent, |
| 12940 | /* 24890*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 12941 | /* 24892*/ OPC_EmitMergeInputChains1_0, |
| 12942 | /* 24893*/ OPC_EmitInteger, MVT::i32, 0, |
| 12943 | /* 24896*/ OPC_EmitConvertToTarget, 2, |
| 12944 | /* 24898*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12945 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 12946 | // Src: (intrinsic_w_chain:{ *:[v4i32] } 8614:{ *:[iPTR] }, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 15 |
| 12947 | // Dst: (LOAD_ZERO_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 12948 | /* 24907*/ 0, // EndSwitchType |
| 12949 | /* 24908*/ /*SwitchOpcode*/ 51, TARGET_VAL(ISD::OR),// ->24962 |
| 12950 | /* 24911*/ OPC_RecordChild0, // #1 = $addr |
| 12951 | /* 24912*/ OPC_RecordChild1, // #2 = $off |
| 12952 | /* 24913*/ OPC_MoveChild1, |
| 12953 | /* 24914*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 12954 | /* 24917*/ OPC_MoveParent, |
| 12955 | /* 24918*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 12956 | /* 24920*/ OPC_SwitchType /*2 cases */, 18, MVT::i32,// ->24941 |
| 12957 | /* 24923*/ OPC_MoveParent, |
| 12958 | /* 24924*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 12959 | /* 24926*/ OPC_EmitMergeInputChains1_0, |
| 12960 | /* 24927*/ OPC_EmitInteger, MVT::i32, 0, |
| 12961 | /* 24930*/ OPC_EmitConvertToTarget, 2, |
| 12962 | /* 24932*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12963 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 12964 | // Src: (intrinsic_w_chain:{ *:[v4i32] } 8614:{ *:[iPTR] }, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 15 |
| 12965 | // Dst: (LOAD_ZERO_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 12966 | /* 24941*/ /*SwitchType*/ 18, MVT::i64,// ->24961 |
| 12967 | /* 24943*/ OPC_MoveParent, |
| 12968 | /* 24944*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 12969 | /* 24946*/ OPC_EmitMergeInputChains1_0, |
| 12970 | /* 24947*/ OPC_EmitInteger, MVT::i32, 0, |
| 12971 | /* 24950*/ OPC_EmitConvertToTarget, 2, |
| 12972 | /* 24952*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 12973 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 12974 | // Src: (intrinsic_w_chain:{ *:[v4i32] } 8614:{ *:[iPTR] }, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 15 |
| 12975 | // Dst: (LOAD_ZERO_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 12976 | /* 24961*/ 0, // EndSwitchType |
| 12977 | /* 24962*/ /*SwitchOpcode*/ 61, TARGET_VAL(WebAssemblyISD::Wrapper),// ->25026 |
| 12978 | /* 24965*/ OPC_RecordChild0, // #1 = $off |
| 12979 | /* 24966*/ OPC_MoveChild0, |
| 12980 | /* 24967*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 12981 | /* 24970*/ OPC_MoveParent, |
| 12982 | /* 24971*/ OPC_MoveParent, |
| 12983 | /* 24972*/ OPC_Scope, 25, /*->24999*/ // 2 children in Scope |
| 12984 | /* 24974*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 12985 | /* 24976*/ OPC_EmitMergeInputChains1_0, |
| 12986 | /* 24977*/ OPC_EmitInteger, MVT::i32, 0, |
| 12987 | /* 24980*/ OPC_EmitInteger, MVT::i32, 0, |
| 12988 | /* 24983*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 12989 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 12990 | /* 24990*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 12991 | MVT::v4i32, 3/*#Ops*/, 2, 1, 4, |
| 12992 | // Src: (intrinsic_w_chain:{ *:[v4i32] } 8614:{ *:[iPTR] }, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 14 |
| 12993 | // Dst: (LOAD_ZERO_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 12994 | /* 24999*/ /*Scope*/ 25, /*->25025*/ |
| 12995 | /* 25000*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 12996 | /* 25002*/ OPC_EmitMergeInputChains1_0, |
| 12997 | /* 25003*/ OPC_EmitInteger, MVT::i32, 0, |
| 12998 | /* 25006*/ OPC_EmitInteger, MVT::i64, 0, |
| 12999 | /* 25009*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13000 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 13001 | /* 25016*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13002 | MVT::v4i32, 3/*#Ops*/, 2, 1, 4, |
| 13003 | // Src: (intrinsic_w_chain:{ *:[v4i32] } 8614:{ *:[iPTR] }, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 14 |
| 13004 | // Dst: (LOAD_ZERO_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 13005 | /* 25025*/ 0, /*End of Scope*/ |
| 13006 | /* 25026*/ 0, // EndSwitchOpcode |
| 13007 | /* 25027*/ /*Scope*/ 109, /*->25137*/ |
| 13008 | /* 25028*/ OPC_RecordChild2, // #1 = $off |
| 13009 | /* 25029*/ OPC_Scope, 63, /*->25094*/ // 3 children in Scope |
| 13010 | /* 25031*/ OPC_MoveChild2, |
| 13011 | /* 25032*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13012 | /* 25035*/ OPC_MoveParent, |
| 13013 | /* 25036*/ OPC_Scope, 27, /*->25065*/ // 2 children in Scope |
| 13014 | /* 25038*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 13015 | /* 25040*/ OPC_EmitMergeInputChains1_0, |
| 13016 | /* 25041*/ OPC_EmitInteger, MVT::i32, 0, |
| 13017 | /* 25044*/ OPC_EmitConvertToTarget, 1, |
| 13018 | /* 25046*/ OPC_EmitInteger, MVT::i32, 0, |
| 13019 | /* 25049*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13020 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 13021 | /* 25056*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13022 | MVT::v4i32, 3/*#Ops*/, 2, 3, 5, |
| 13023 | // Src: (intrinsic_w_chain:{ *:[v4i32] } 8614:{ *:[iPTR] }, (imm:{ *:[iPTR] }):$off) - Complexity = 11 |
| 13024 | // Dst: (LOAD_ZERO_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 13025 | /* 25065*/ /*Scope*/ 27, /*->25093*/ |
| 13026 | /* 25066*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 13027 | /* 25068*/ OPC_EmitMergeInputChains1_0, |
| 13028 | /* 25069*/ OPC_EmitInteger, MVT::i32, 0, |
| 13029 | /* 25072*/ OPC_EmitConvertToTarget, 1, |
| 13030 | /* 25074*/ OPC_EmitInteger, MVT::i64, 0, |
| 13031 | /* 25077*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13032 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 13033 | /* 25084*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13034 | MVT::v4i32, 3/*#Ops*/, 2, 3, 5, |
| 13035 | // Src: (intrinsic_w_chain:{ *:[v4i32] } 8614:{ *:[iPTR] }, (imm:{ *:[iPTR] }):$off) - Complexity = 11 |
| 13036 | // Dst: (LOAD_ZERO_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 13037 | /* 25093*/ 0, /*End of Scope*/ |
| 13038 | /* 25094*/ /*Scope*/ 20, /*->25115*/ |
| 13039 | /* 25095*/ OPC_CheckChild2Type, MVT::i32, |
| 13040 | /* 25097*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 13041 | /* 25099*/ OPC_EmitMergeInputChains1_0, |
| 13042 | /* 25100*/ OPC_EmitInteger, MVT::i32, 0, |
| 13043 | /* 25103*/ OPC_EmitInteger, MVT::i32, 0, |
| 13044 | /* 25106*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13045 | MVT::v4i32, 3/*#Ops*/, 2, 3, 1, |
| 13046 | // Src: (intrinsic_w_chain:{ *:[v4i32] } 8614:{ *:[iPTR] }, I32:{ *:[i32] }:$addr) - Complexity = 8 |
| 13047 | // Dst: (LOAD_ZERO_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 13048 | /* 25115*/ /*Scope*/ 20, /*->25136*/ |
| 13049 | /* 25116*/ OPC_CheckChild2Type, MVT::i64, |
| 13050 | /* 25118*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 13051 | /* 25120*/ OPC_EmitMergeInputChains1_0, |
| 13052 | /* 25121*/ OPC_EmitInteger, MVT::i32, 0, |
| 13053 | /* 25124*/ OPC_EmitInteger, MVT::i64, 0, |
| 13054 | /* 25127*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13055 | MVT::v4i32, 3/*#Ops*/, 2, 3, 1, |
| 13056 | // Src: (intrinsic_w_chain:{ *:[v4i32] } 8614:{ *:[iPTR] }, I64:{ *:[i64] }:$addr) - Complexity = 8 |
| 13057 | // Dst: (LOAD_ZERO_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 13058 | /* 25136*/ 0, /*End of Scope*/ |
| 13059 | /* 25137*/ 0, /*End of Scope*/ |
| 13060 | /* 25138*/ /*Scope*/ 36|128,2/*292*/, /*->25432*/ |
| 13061 | /* 25140*/ OPC_CheckChild1Integer, 40|128,67/*8616*/, |
| 13062 | /* 25143*/ OPC_Scope, 47|128,1/*175*/, /*->25321*/ // 2 children in Scope |
| 13063 | /* 25146*/ OPC_MoveChild2, |
| 13064 | /* 25147*/ OPC_SwitchOpcode /*3 cases */, 51, TARGET_VAL(ISD::ADD),// ->25202 |
| 13065 | /* 25151*/ OPC_RecordChild0, // #1 = $addr |
| 13066 | /* 25152*/ OPC_RecordChild1, // #2 = $off |
| 13067 | /* 25153*/ OPC_MoveChild1, |
| 13068 | /* 25154*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13069 | /* 25157*/ OPC_MoveParent, |
| 13070 | /* 25158*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 13071 | /* 25160*/ OPC_SwitchType /*2 cases */, 18, MVT::i32,// ->25181 |
| 13072 | /* 25163*/ OPC_MoveParent, |
| 13073 | /* 25164*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 13074 | /* 25166*/ OPC_EmitMergeInputChains1_0, |
| 13075 | /* 25167*/ OPC_EmitInteger, MVT::i32, 0, |
| 13076 | /* 25170*/ OPC_EmitConvertToTarget, 2, |
| 13077 | /* 25172*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13078 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 13079 | // Src: (intrinsic_w_chain:{ *:[v2i64] } 8616:{ *:[iPTR] }, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 15 |
| 13080 | // Dst: (LOAD_ZERO_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 13081 | /* 25181*/ /*SwitchType*/ 18, MVT::i64,// ->25201 |
| 13082 | /* 25183*/ OPC_MoveParent, |
| 13083 | /* 25184*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 13084 | /* 25186*/ OPC_EmitMergeInputChains1_0, |
| 13085 | /* 25187*/ OPC_EmitInteger, MVT::i32, 0, |
| 13086 | /* 25190*/ OPC_EmitConvertToTarget, 2, |
| 13087 | /* 25192*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13088 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 13089 | // Src: (intrinsic_w_chain:{ *:[v2i64] } 8616:{ *:[iPTR] }, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 15 |
| 13090 | // Dst: (LOAD_ZERO_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 13091 | /* 25201*/ 0, // EndSwitchType |
| 13092 | /* 25202*/ /*SwitchOpcode*/ 51, TARGET_VAL(ISD::OR),// ->25256 |
| 13093 | /* 25205*/ OPC_RecordChild0, // #1 = $addr |
| 13094 | /* 25206*/ OPC_RecordChild1, // #2 = $off |
| 13095 | /* 25207*/ OPC_MoveChild1, |
| 13096 | /* 25208*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13097 | /* 25211*/ OPC_MoveParent, |
| 13098 | /* 25212*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 13099 | /* 25214*/ OPC_SwitchType /*2 cases */, 18, MVT::i32,// ->25235 |
| 13100 | /* 25217*/ OPC_MoveParent, |
| 13101 | /* 25218*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 13102 | /* 25220*/ OPC_EmitMergeInputChains1_0, |
| 13103 | /* 25221*/ OPC_EmitInteger, MVT::i32, 0, |
| 13104 | /* 25224*/ OPC_EmitConvertToTarget, 2, |
| 13105 | /* 25226*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13106 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 13107 | // Src: (intrinsic_w_chain:{ *:[v2i64] } 8616:{ *:[iPTR] }, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 15 |
| 13108 | // Dst: (LOAD_ZERO_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 13109 | /* 25235*/ /*SwitchType*/ 18, MVT::i64,// ->25255 |
| 13110 | /* 25237*/ OPC_MoveParent, |
| 13111 | /* 25238*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 13112 | /* 25240*/ OPC_EmitMergeInputChains1_0, |
| 13113 | /* 25241*/ OPC_EmitInteger, MVT::i32, 0, |
| 13114 | /* 25244*/ OPC_EmitConvertToTarget, 2, |
| 13115 | /* 25246*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13116 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 13117 | // Src: (intrinsic_w_chain:{ *:[v2i64] } 8616:{ *:[iPTR] }, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 15 |
| 13118 | // Dst: (LOAD_ZERO_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 13119 | /* 25255*/ 0, // EndSwitchType |
| 13120 | /* 25256*/ /*SwitchOpcode*/ 61, TARGET_VAL(WebAssemblyISD::Wrapper),// ->25320 |
| 13121 | /* 25259*/ OPC_RecordChild0, // #1 = $off |
| 13122 | /* 25260*/ OPC_MoveChild0, |
| 13123 | /* 25261*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 13124 | /* 25264*/ OPC_MoveParent, |
| 13125 | /* 25265*/ OPC_MoveParent, |
| 13126 | /* 25266*/ OPC_Scope, 25, /*->25293*/ // 2 children in Scope |
| 13127 | /* 25268*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 13128 | /* 25270*/ OPC_EmitMergeInputChains1_0, |
| 13129 | /* 25271*/ OPC_EmitInteger, MVT::i32, 0, |
| 13130 | /* 25274*/ OPC_EmitInteger, MVT::i32, 0, |
| 13131 | /* 25277*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13132 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 13133 | /* 25284*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13134 | MVT::v2i64, 3/*#Ops*/, 2, 1, 4, |
| 13135 | // Src: (intrinsic_w_chain:{ *:[v2i64] } 8616:{ *:[iPTR] }, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 14 |
| 13136 | // Dst: (LOAD_ZERO_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 13137 | /* 25293*/ /*Scope*/ 25, /*->25319*/ |
| 13138 | /* 25294*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 13139 | /* 25296*/ OPC_EmitMergeInputChains1_0, |
| 13140 | /* 25297*/ OPC_EmitInteger, MVT::i32, 0, |
| 13141 | /* 25300*/ OPC_EmitInteger, MVT::i64, 0, |
| 13142 | /* 25303*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13143 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 13144 | /* 25310*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13145 | MVT::v2i64, 3/*#Ops*/, 2, 1, 4, |
| 13146 | // Src: (intrinsic_w_chain:{ *:[v2i64] } 8616:{ *:[iPTR] }, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 14 |
| 13147 | // Dst: (LOAD_ZERO_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 13148 | /* 25319*/ 0, /*End of Scope*/ |
| 13149 | /* 25320*/ 0, // EndSwitchOpcode |
| 13150 | /* 25321*/ /*Scope*/ 109, /*->25431*/ |
| 13151 | /* 25322*/ OPC_RecordChild2, // #1 = $off |
| 13152 | /* 25323*/ OPC_Scope, 63, /*->25388*/ // 3 children in Scope |
| 13153 | /* 25325*/ OPC_MoveChild2, |
| 13154 | /* 25326*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13155 | /* 25329*/ OPC_MoveParent, |
| 13156 | /* 25330*/ OPC_Scope, 27, /*->25359*/ // 2 children in Scope |
| 13157 | /* 25332*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 13158 | /* 25334*/ OPC_EmitMergeInputChains1_0, |
| 13159 | /* 25335*/ OPC_EmitInteger, MVT::i32, 0, |
| 13160 | /* 25338*/ OPC_EmitConvertToTarget, 1, |
| 13161 | /* 25340*/ OPC_EmitInteger, MVT::i32, 0, |
| 13162 | /* 25343*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13163 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 13164 | /* 25350*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13165 | MVT::v2i64, 3/*#Ops*/, 2, 3, 5, |
| 13166 | // Src: (intrinsic_w_chain:{ *:[v2i64] } 8616:{ *:[iPTR] }, (imm:{ *:[iPTR] }):$off) - Complexity = 11 |
| 13167 | // Dst: (LOAD_ZERO_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 13168 | /* 25359*/ /*Scope*/ 27, /*->25387*/ |
| 13169 | /* 25360*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 13170 | /* 25362*/ OPC_EmitMergeInputChains1_0, |
| 13171 | /* 25363*/ OPC_EmitInteger, MVT::i32, 0, |
| 13172 | /* 25366*/ OPC_EmitConvertToTarget, 1, |
| 13173 | /* 25368*/ OPC_EmitInteger, MVT::i64, 0, |
| 13174 | /* 25371*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13175 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 13176 | /* 25378*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13177 | MVT::v2i64, 3/*#Ops*/, 2, 3, 5, |
| 13178 | // Src: (intrinsic_w_chain:{ *:[v2i64] } 8616:{ *:[iPTR] }, (imm:{ *:[iPTR] }):$off) - Complexity = 11 |
| 13179 | // Dst: (LOAD_ZERO_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 13180 | /* 25387*/ 0, /*End of Scope*/ |
| 13181 | /* 25388*/ /*Scope*/ 20, /*->25409*/ |
| 13182 | /* 25389*/ OPC_CheckChild2Type, MVT::i32, |
| 13183 | /* 25391*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 13184 | /* 25393*/ OPC_EmitMergeInputChains1_0, |
| 13185 | /* 25394*/ OPC_EmitInteger, MVT::i32, 0, |
| 13186 | /* 25397*/ OPC_EmitInteger, MVT::i32, 0, |
| 13187 | /* 25400*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13188 | MVT::v2i64, 3/*#Ops*/, 2, 3, 1, |
| 13189 | // Src: (intrinsic_w_chain:{ *:[v2i64] } 8616:{ *:[iPTR] }, I32:{ *:[i32] }:$addr) - Complexity = 8 |
| 13190 | // Dst: (LOAD_ZERO_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 13191 | /* 25409*/ /*Scope*/ 20, /*->25430*/ |
| 13192 | /* 25410*/ OPC_CheckChild2Type, MVT::i64, |
| 13193 | /* 25412*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 13194 | /* 25414*/ OPC_EmitMergeInputChains1_0, |
| 13195 | /* 25415*/ OPC_EmitInteger, MVT::i32, 0, |
| 13196 | /* 25418*/ OPC_EmitInteger, MVT::i64, 0, |
| 13197 | /* 25421*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13198 | MVT::v2i64, 3/*#Ops*/, 2, 3, 1, |
| 13199 | // Src: (intrinsic_w_chain:{ *:[v2i64] } 8616:{ *:[iPTR] }, I64:{ *:[i64] }:$addr) - Complexity = 8 |
| 13200 | // Dst: (LOAD_ZERO_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 13201 | /* 25430*/ 0, /*End of Scope*/ |
| 13202 | /* 25431*/ 0, /*End of Scope*/ |
| 13203 | /* 25432*/ /*Scope*/ 74, /*->25507*/ |
| 13204 | /* 25433*/ OPC_CheckChild1Integer, 41|128,67/*8617*/, |
| 13205 | /* 25436*/ OPC_RecordChild2, // #1 = $addr |
| 13206 | /* 25437*/ OPC_Scope, 33, /*->25472*/ // 2 children in Scope |
| 13207 | /* 25439*/ OPC_CheckChild2Type, MVT::i32, |
| 13208 | /* 25441*/ OPC_RecordChild3, // #2 = $vec |
| 13209 | /* 25442*/ OPC_RecordChild4, // #3 = $idx |
| 13210 | /* 25443*/ OPC_MoveChild4, |
| 13211 | /* 25444*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13212 | /* 25447*/ OPC_CheckPredicate, 4, // Predicate_LaneIdx16 |
| 13213 | /* 25449*/ OPC_MoveParent, |
| 13214 | /* 25450*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 13215 | /* 25452*/ OPC_EmitMergeInputChains1_0, |
| 13216 | /* 25453*/ OPC_EmitInteger, MVT::i32, 0, |
| 13217 | /* 25456*/ OPC_EmitInteger, MVT::i32, 0, |
| 13218 | /* 25459*/ OPC_EmitConvertToTarget, 3, |
| 13219 | /* 25461*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I8x16_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13220 | MVT::v16i8, 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 13221 | // Src: (intrinsic_w_chain:{ *:[v16i8] } 8617:{ *:[iPTR] }, I32:{ *:[i32] }:$addr, V128:{ *:[v16i8] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx16>>:$idx) - Complexity = 12 |
| 13222 | // Dst: (LOAD_LANE_I8x16_A32:{ *:[v16i8] } 0:{ *:[i32] }, 0:{ *:[i32] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i32] }:$addr, ?:{ *:[v16i8] }:$vec) |
| 13223 | /* 25472*/ /*Scope*/ 33, /*->25506*/ |
| 13224 | /* 25473*/ OPC_CheckChild2Type, MVT::i64, |
| 13225 | /* 25475*/ OPC_RecordChild3, // #2 = $vec |
| 13226 | /* 25476*/ OPC_RecordChild4, // #3 = $idx |
| 13227 | /* 25477*/ OPC_MoveChild4, |
| 13228 | /* 25478*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13229 | /* 25481*/ OPC_CheckPredicate, 4, // Predicate_LaneIdx16 |
| 13230 | /* 25483*/ OPC_MoveParent, |
| 13231 | /* 25484*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 13232 | /* 25486*/ OPC_EmitMergeInputChains1_0, |
| 13233 | /* 25487*/ OPC_EmitInteger, MVT::i32, 0, |
| 13234 | /* 25490*/ OPC_EmitInteger, MVT::i64, 0, |
| 13235 | /* 25493*/ OPC_EmitConvertToTarget, 3, |
| 13236 | /* 25495*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I8x16_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13237 | MVT::v16i8, 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 13238 | // Src: (intrinsic_w_chain:{ *:[v16i8] } 8617:{ *:[iPTR] }, I64:{ *:[i64] }:$addr, V128:{ *:[v16i8] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx16>>:$idx) - Complexity = 12 |
| 13239 | // Dst: (LOAD_LANE_I8x16_A64:{ *:[v16i8] } 0:{ *:[i32] }, 0:{ *:[i64] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i64] }:$addr, ?:{ *:[v16i8] }:$vec) |
| 13240 | /* 25506*/ 0, /*End of Scope*/ |
| 13241 | /* 25507*/ /*Scope*/ 74, /*->25582*/ |
| 13242 | /* 25508*/ OPC_CheckChild1Integer, 36|128,67/*8612*/, |
| 13243 | /* 25511*/ OPC_RecordChild2, // #1 = $addr |
| 13244 | /* 25512*/ OPC_Scope, 33, /*->25547*/ // 2 children in Scope |
| 13245 | /* 25514*/ OPC_CheckChild2Type, MVT::i32, |
| 13246 | /* 25516*/ OPC_RecordChild3, // #2 = $vec |
| 13247 | /* 25517*/ OPC_RecordChild4, // #3 = $idx |
| 13248 | /* 25518*/ OPC_MoveChild4, |
| 13249 | /* 25519*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13250 | /* 25522*/ OPC_CheckPredicate, 5, // Predicate_LaneIdx8 |
| 13251 | /* 25524*/ OPC_MoveParent, |
| 13252 | /* 25525*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 13253 | /* 25527*/ OPC_EmitMergeInputChains1_0, |
| 13254 | /* 25528*/ OPC_EmitInteger, MVT::i32, 0, |
| 13255 | /* 25531*/ OPC_EmitInteger, MVT::i32, 0, |
| 13256 | /* 25534*/ OPC_EmitConvertToTarget, 3, |
| 13257 | /* 25536*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13258 | MVT::v8i16, 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 13259 | // Src: (intrinsic_w_chain:{ *:[v8i16] } 8612:{ *:[iPTR] }, I32:{ *:[i32] }:$addr, V128:{ *:[v8i16] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx8>>:$idx) - Complexity = 12 |
| 13260 | // Dst: (LOAD_LANE_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, 0:{ *:[i32] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i32] }:$addr, ?:{ *:[v8i16] }:$vec) |
| 13261 | /* 25547*/ /*Scope*/ 33, /*->25581*/ |
| 13262 | /* 25548*/ OPC_CheckChild2Type, MVT::i64, |
| 13263 | /* 25550*/ OPC_RecordChild3, // #2 = $vec |
| 13264 | /* 25551*/ OPC_RecordChild4, // #3 = $idx |
| 13265 | /* 25552*/ OPC_MoveChild4, |
| 13266 | /* 25553*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13267 | /* 25556*/ OPC_CheckPredicate, 5, // Predicate_LaneIdx8 |
| 13268 | /* 25558*/ OPC_MoveParent, |
| 13269 | /* 25559*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 13270 | /* 25561*/ OPC_EmitMergeInputChains1_0, |
| 13271 | /* 25562*/ OPC_EmitInteger, MVT::i32, 0, |
| 13272 | /* 25565*/ OPC_EmitInteger, MVT::i64, 0, |
| 13273 | /* 25568*/ OPC_EmitConvertToTarget, 3, |
| 13274 | /* 25570*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13275 | MVT::v8i16, 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 13276 | // Src: (intrinsic_w_chain:{ *:[v8i16] } 8612:{ *:[iPTR] }, I64:{ *:[i64] }:$addr, V128:{ *:[v8i16] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx8>>:$idx) - Complexity = 12 |
| 13277 | // Dst: (LOAD_LANE_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, 0:{ *:[i64] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i64] }:$addr, ?:{ *:[v8i16] }:$vec) |
| 13278 | /* 25581*/ 0, /*End of Scope*/ |
| 13279 | /* 25582*/ /*Scope*/ 74, /*->25657*/ |
| 13280 | /* 25583*/ OPC_CheckChild1Integer, 37|128,67/*8613*/, |
| 13281 | /* 25586*/ OPC_RecordChild2, // #1 = $addr |
| 13282 | /* 25587*/ OPC_Scope, 33, /*->25622*/ // 2 children in Scope |
| 13283 | /* 25589*/ OPC_CheckChild2Type, MVT::i32, |
| 13284 | /* 25591*/ OPC_RecordChild3, // #2 = $vec |
| 13285 | /* 25592*/ OPC_RecordChild4, // #3 = $idx |
| 13286 | /* 25593*/ OPC_MoveChild4, |
| 13287 | /* 25594*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13288 | /* 25597*/ OPC_CheckPredicate, 7, // Predicate_LaneIdx4 |
| 13289 | /* 25599*/ OPC_MoveParent, |
| 13290 | /* 25600*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 13291 | /* 25602*/ OPC_EmitMergeInputChains1_0, |
| 13292 | /* 25603*/ OPC_EmitInteger, MVT::i32, 0, |
| 13293 | /* 25606*/ OPC_EmitInteger, MVT::i32, 0, |
| 13294 | /* 25609*/ OPC_EmitConvertToTarget, 3, |
| 13295 | /* 25611*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13296 | MVT::v4i32, 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 13297 | // Src: (intrinsic_w_chain:{ *:[v4i32] } 8613:{ *:[iPTR] }, I32:{ *:[i32] }:$addr, V128:{ *:[v4i32] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx4>>:$idx) - Complexity = 12 |
| 13298 | // Dst: (LOAD_LANE_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i32] }:$addr, ?:{ *:[v4i32] }:$vec) |
| 13299 | /* 25622*/ /*Scope*/ 33, /*->25656*/ |
| 13300 | /* 25623*/ OPC_CheckChild2Type, MVT::i64, |
| 13301 | /* 25625*/ OPC_RecordChild3, // #2 = $vec |
| 13302 | /* 25626*/ OPC_RecordChild4, // #3 = $idx |
| 13303 | /* 25627*/ OPC_MoveChild4, |
| 13304 | /* 25628*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13305 | /* 25631*/ OPC_CheckPredicate, 7, // Predicate_LaneIdx4 |
| 13306 | /* 25633*/ OPC_MoveParent, |
| 13307 | /* 25634*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 13308 | /* 25636*/ OPC_EmitMergeInputChains1_0, |
| 13309 | /* 25637*/ OPC_EmitInteger, MVT::i32, 0, |
| 13310 | /* 25640*/ OPC_EmitInteger, MVT::i64, 0, |
| 13311 | /* 25643*/ OPC_EmitConvertToTarget, 3, |
| 13312 | /* 25645*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13313 | MVT::v4i32, 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 13314 | // Src: (intrinsic_w_chain:{ *:[v4i32] } 8613:{ *:[iPTR] }, I64:{ *:[i64] }:$addr, V128:{ *:[v4i32] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx4>>:$idx) - Complexity = 12 |
| 13315 | // Dst: (LOAD_LANE_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i64] }:$addr, ?:{ *:[v4i32] }:$vec) |
| 13316 | /* 25656*/ 0, /*End of Scope*/ |
| 13317 | /* 25657*/ /*Scope*/ 74, /*->25732*/ |
| 13318 | /* 25658*/ OPC_CheckChild1Integer, 39|128,67/*8615*/, |
| 13319 | /* 25661*/ OPC_RecordChild2, // #1 = $addr |
| 13320 | /* 25662*/ OPC_Scope, 33, /*->25697*/ // 2 children in Scope |
| 13321 | /* 25664*/ OPC_CheckChild2Type, MVT::i32, |
| 13322 | /* 25666*/ OPC_RecordChild3, // #2 = $vec |
| 13323 | /* 25667*/ OPC_RecordChild4, // #3 = $idx |
| 13324 | /* 25668*/ OPC_MoveChild4, |
| 13325 | /* 25669*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13326 | /* 25672*/ OPC_CheckPredicate, 8, // Predicate_LaneIdx2 |
| 13327 | /* 25674*/ OPC_MoveParent, |
| 13328 | /* 25675*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 13329 | /* 25677*/ OPC_EmitMergeInputChains1_0, |
| 13330 | /* 25678*/ OPC_EmitInteger, MVT::i32, 0, |
| 13331 | /* 25681*/ OPC_EmitInteger, MVT::i32, 0, |
| 13332 | /* 25684*/ OPC_EmitConvertToTarget, 3, |
| 13333 | /* 25686*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13334 | MVT::v2i64, 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 13335 | // Src: (intrinsic_w_chain:{ *:[v2i64] } 8615:{ *:[iPTR] }, I32:{ *:[i32] }:$addr, V128:{ *:[v2i64] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx2>>:$idx) - Complexity = 12 |
| 13336 | // Dst: (LOAD_LANE_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i32] }:$addr, ?:{ *:[v2i64] }:$vec) |
| 13337 | /* 25697*/ /*Scope*/ 33, /*->25731*/ |
| 13338 | /* 25698*/ OPC_CheckChild2Type, MVT::i64, |
| 13339 | /* 25700*/ OPC_RecordChild3, // #2 = $vec |
| 13340 | /* 25701*/ OPC_RecordChild4, // #3 = $idx |
| 13341 | /* 25702*/ OPC_MoveChild4, |
| 13342 | /* 25703*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13343 | /* 25706*/ OPC_CheckPredicate, 8, // Predicate_LaneIdx2 |
| 13344 | /* 25708*/ OPC_MoveParent, |
| 13345 | /* 25709*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 13346 | /* 25711*/ OPC_EmitMergeInputChains1_0, |
| 13347 | /* 25712*/ OPC_EmitInteger, MVT::i32, 0, |
| 13348 | /* 25715*/ OPC_EmitInteger, MVT::i64, 0, |
| 13349 | /* 25718*/ OPC_EmitConvertToTarget, 3, |
| 13350 | /* 25720*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13351 | MVT::v2i64, 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 13352 | // Src: (intrinsic_w_chain:{ *:[v2i64] } 8615:{ *:[iPTR] }, I64:{ *:[i64] }:$addr, V128:{ *:[v2i64] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx2>>:$idx) - Complexity = 12 |
| 13353 | // Dst: (LOAD_LANE_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i64] }:$addr, ?:{ *:[v2i64] }:$vec) |
| 13354 | /* 25731*/ 0, /*End of Scope*/ |
| 13355 | /* 25732*/ 0, /*End of Scope*/ |
| 13356 | /* 25733*/ 0, /*End of Scope*/ |
| 13357 | /* 25734*/ /*SwitchOpcode*/ 75|128,14/*1867*/, TARGET_VAL(ISD::ATOMIC_STORE),// ->27605 |
| 13358 | /* 25738*/ OPC_RecordMemRef, |
| 13359 | /* 25739*/ OPC_RecordNode, // #0 = 'atomic_store' chained node |
| 13360 | /* 25740*/ OPC_Scope, 25|128,7/*921*/, /*->26664*/ // 4 children in Scope |
| 13361 | /* 25743*/ OPC_MoveChild1, |
| 13362 | /* 25744*/ OPC_SwitchOpcode /*3 cases */, 87|128,2/*343*/, TARGET_VAL(ISD::ADD),// ->26092 |
| 13363 | /* 25749*/ OPC_RecordChild0, // #1 = $addr |
| 13364 | /* 25750*/ OPC_RecordChild1, // #2 = $off |
| 13365 | /* 25751*/ OPC_MoveChild1, |
| 13366 | /* 25752*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13367 | /* 25755*/ OPC_MoveParent, |
| 13368 | /* 25756*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 13369 | /* 25758*/ OPC_SwitchType /*2 cases */, 35|128,1/*163*/, MVT::i32,// ->25925 |
| 13370 | /* 25762*/ OPC_MoveParent, |
| 13371 | /* 25763*/ OPC_Scope, 68, /*->25833*/ // 2 children in Scope |
| 13372 | /* 25765*/ OPC_MoveChild2, |
| 13373 | /* 25766*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 13374 | /* 25769*/ OPC_RecordChild0, // #3 = $val |
| 13375 | /* 25770*/ OPC_MoveParent, |
| 13376 | /* 25771*/ OPC_Scope, 19, /*->25792*/ // 3 children in Scope |
| 13377 | /* 25773*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 13378 | /* 25775*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13379 | /* 25777*/ OPC_EmitMergeInputChains1_0, |
| 13380 | /* 25778*/ OPC_EmitInteger, MVT::i32, 0, |
| 13381 | /* 25781*/ OPC_EmitConvertToTarget, 2, |
| 13382 | /* 25783*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13383 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13384 | // Src: (atomic_store (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_8>> - Complexity = 14 |
| 13385 | // Dst: (ATOMIC_STORE8_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 13386 | /* 25792*/ /*Scope*/ 19, /*->25812*/ |
| 13387 | /* 25793*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 13388 | /* 25795*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13389 | /* 25797*/ OPC_EmitMergeInputChains1_0, |
| 13390 | /* 25798*/ OPC_EmitInteger, MVT::i32, 0, |
| 13391 | /* 25801*/ OPC_EmitConvertToTarget, 2, |
| 13392 | /* 25803*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13393 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13394 | // Src: (atomic_store (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_16>> - Complexity = 14 |
| 13395 | // Dst: (ATOMIC_STORE16_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 13396 | /* 25812*/ /*Scope*/ 19, /*->25832*/ |
| 13397 | /* 25813*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 13398 | /* 25815*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13399 | /* 25817*/ OPC_EmitMergeInputChains1_0, |
| 13400 | /* 25818*/ OPC_EmitInteger, MVT::i32, 0, |
| 13401 | /* 25821*/ OPC_EmitConvertToTarget, 2, |
| 13402 | /* 25823*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE32_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13403 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13404 | // Src: (atomic_store (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_32>> - Complexity = 14 |
| 13405 | // Dst: (ATOMIC_STORE32_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 13406 | /* 25832*/ 0, /*End of Scope*/ |
| 13407 | /* 25833*/ /*Scope*/ 90, /*->25924*/ |
| 13408 | /* 25834*/ OPC_RecordChild2, // #3 = $val |
| 13409 | /* 25835*/ OPC_Scope, 64, /*->25901*/ // 2 children in Scope |
| 13410 | /* 25837*/ OPC_CheckChild2Type, MVT::i32, |
| 13411 | /* 25839*/ OPC_Scope, 19, /*->25860*/ // 3 children in Scope |
| 13412 | /* 25841*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 13413 | /* 25843*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13414 | /* 25845*/ OPC_EmitMergeInputChains1_0, |
| 13415 | /* 25846*/ OPC_EmitInteger, MVT::i32, 0, |
| 13416 | /* 25849*/ OPC_EmitConvertToTarget, 2, |
| 13417 | /* 25851*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13418 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13419 | // Src: (atomic_store (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_32>> - Complexity = 11 |
| 13420 | // Dst: (ATOMIC_STORE_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 13421 | /* 25860*/ /*Scope*/ 19, /*->25880*/ |
| 13422 | /* 25861*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 13423 | /* 25863*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13424 | /* 25865*/ OPC_EmitMergeInputChains1_0, |
| 13425 | /* 25866*/ OPC_EmitInteger, MVT::i32, 0, |
| 13426 | /* 25869*/ OPC_EmitConvertToTarget, 2, |
| 13427 | /* 25871*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13428 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13429 | // Src: (atomic_store (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_8>> - Complexity = 11 |
| 13430 | // Dst: (ATOMIC_STORE8_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 13431 | /* 25880*/ /*Scope*/ 19, /*->25900*/ |
| 13432 | /* 25881*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 13433 | /* 25883*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13434 | /* 25885*/ OPC_EmitMergeInputChains1_0, |
| 13435 | /* 25886*/ OPC_EmitInteger, MVT::i32, 0, |
| 13436 | /* 25889*/ OPC_EmitConvertToTarget, 2, |
| 13437 | /* 25891*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13438 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13439 | // Src: (atomic_store (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_16>> - Complexity = 11 |
| 13440 | // Dst: (ATOMIC_STORE16_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 13441 | /* 25900*/ 0, /*End of Scope*/ |
| 13442 | /* 25901*/ /*Scope*/ 21, /*->25923*/ |
| 13443 | /* 25902*/ OPC_CheckChild2Type, MVT::i64, |
| 13444 | /* 25904*/ OPC_CheckPredicate, 9, // Predicate_atomic_store_64 |
| 13445 | /* 25906*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13446 | /* 25908*/ OPC_EmitMergeInputChains1_0, |
| 13447 | /* 25909*/ OPC_EmitInteger, MVT::i32, 0, |
| 13448 | /* 25912*/ OPC_EmitConvertToTarget, 2, |
| 13449 | /* 25914*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13450 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13451 | // Src: (atomic_store (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_store_64>> - Complexity = 11 |
| 13452 | // Dst: (ATOMIC_STORE_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 13453 | /* 25923*/ 0, /*End of Scope*/ |
| 13454 | /* 25924*/ 0, /*End of Scope*/ |
| 13455 | /* 25925*/ /*SwitchType*/ 35|128,1/*163*/, MVT::i64,// ->26091 |
| 13456 | /* 25928*/ OPC_MoveParent, |
| 13457 | /* 25929*/ OPC_Scope, 68, /*->25999*/ // 2 children in Scope |
| 13458 | /* 25931*/ OPC_MoveChild2, |
| 13459 | /* 25932*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 13460 | /* 25935*/ OPC_RecordChild0, // #3 = $val |
| 13461 | /* 25936*/ OPC_MoveParent, |
| 13462 | /* 25937*/ OPC_Scope, 19, /*->25958*/ // 3 children in Scope |
| 13463 | /* 25939*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 13464 | /* 25941*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13465 | /* 25943*/ OPC_EmitMergeInputChains1_0, |
| 13466 | /* 25944*/ OPC_EmitInteger, MVT::i32, 0, |
| 13467 | /* 25947*/ OPC_EmitConvertToTarget, 2, |
| 13468 | /* 25949*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13469 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13470 | // Src: (atomic_store (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_8>> - Complexity = 14 |
| 13471 | // Dst: (ATOMIC_STORE8_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 13472 | /* 25958*/ /*Scope*/ 19, /*->25978*/ |
| 13473 | /* 25959*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 13474 | /* 25961*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13475 | /* 25963*/ OPC_EmitMergeInputChains1_0, |
| 13476 | /* 25964*/ OPC_EmitInteger, MVT::i32, 0, |
| 13477 | /* 25967*/ OPC_EmitConvertToTarget, 2, |
| 13478 | /* 25969*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13479 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13480 | // Src: (atomic_store (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_16>> - Complexity = 14 |
| 13481 | // Dst: (ATOMIC_STORE16_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 13482 | /* 25978*/ /*Scope*/ 19, /*->25998*/ |
| 13483 | /* 25979*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 13484 | /* 25981*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13485 | /* 25983*/ OPC_EmitMergeInputChains1_0, |
| 13486 | /* 25984*/ OPC_EmitInteger, MVT::i32, 0, |
| 13487 | /* 25987*/ OPC_EmitConvertToTarget, 2, |
| 13488 | /* 25989*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE32_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13489 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13490 | // Src: (atomic_store (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_32>> - Complexity = 14 |
| 13491 | // Dst: (ATOMIC_STORE32_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 13492 | /* 25998*/ 0, /*End of Scope*/ |
| 13493 | /* 25999*/ /*Scope*/ 90, /*->26090*/ |
| 13494 | /* 26000*/ OPC_RecordChild2, // #3 = $val |
| 13495 | /* 26001*/ OPC_Scope, 64, /*->26067*/ // 2 children in Scope |
| 13496 | /* 26003*/ OPC_CheckChild2Type, MVT::i32, |
| 13497 | /* 26005*/ OPC_Scope, 19, /*->26026*/ // 3 children in Scope |
| 13498 | /* 26007*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 13499 | /* 26009*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13500 | /* 26011*/ OPC_EmitMergeInputChains1_0, |
| 13501 | /* 26012*/ OPC_EmitInteger, MVT::i32, 0, |
| 13502 | /* 26015*/ OPC_EmitConvertToTarget, 2, |
| 13503 | /* 26017*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13504 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13505 | // Src: (atomic_store (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_32>> - Complexity = 11 |
| 13506 | // Dst: (ATOMIC_STORE_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 13507 | /* 26026*/ /*Scope*/ 19, /*->26046*/ |
| 13508 | /* 26027*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 13509 | /* 26029*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13510 | /* 26031*/ OPC_EmitMergeInputChains1_0, |
| 13511 | /* 26032*/ OPC_EmitInteger, MVT::i32, 0, |
| 13512 | /* 26035*/ OPC_EmitConvertToTarget, 2, |
| 13513 | /* 26037*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13514 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13515 | // Src: (atomic_store (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_8>> - Complexity = 11 |
| 13516 | // Dst: (ATOMIC_STORE8_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 13517 | /* 26046*/ /*Scope*/ 19, /*->26066*/ |
| 13518 | /* 26047*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 13519 | /* 26049*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13520 | /* 26051*/ OPC_EmitMergeInputChains1_0, |
| 13521 | /* 26052*/ OPC_EmitInteger, MVT::i32, 0, |
| 13522 | /* 26055*/ OPC_EmitConvertToTarget, 2, |
| 13523 | /* 26057*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13524 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13525 | // Src: (atomic_store (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_16>> - Complexity = 11 |
| 13526 | // Dst: (ATOMIC_STORE16_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 13527 | /* 26066*/ 0, /*End of Scope*/ |
| 13528 | /* 26067*/ /*Scope*/ 21, /*->26089*/ |
| 13529 | /* 26068*/ OPC_CheckChild2Type, MVT::i64, |
| 13530 | /* 26070*/ OPC_CheckPredicate, 9, // Predicate_atomic_store_64 |
| 13531 | /* 26072*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13532 | /* 26074*/ OPC_EmitMergeInputChains1_0, |
| 13533 | /* 26075*/ OPC_EmitInteger, MVT::i32, 0, |
| 13534 | /* 26078*/ OPC_EmitConvertToTarget, 2, |
| 13535 | /* 26080*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13536 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13537 | // Src: (atomic_store (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_store_64>> - Complexity = 11 |
| 13538 | // Dst: (ATOMIC_STORE_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 13539 | /* 26089*/ 0, /*End of Scope*/ |
| 13540 | /* 26090*/ 0, /*End of Scope*/ |
| 13541 | /* 26091*/ 0, // EndSwitchType |
| 13542 | /* 26092*/ /*SwitchOpcode*/ 123|128,1/*251*/, TARGET_VAL(ISD::OR),// ->26347 |
| 13543 | /* 26096*/ OPC_RecordChild0, // #1 = $addr |
| 13544 | /* 26097*/ OPC_RecordChild1, // #2 = $off |
| 13545 | /* 26098*/ OPC_MoveChild1, |
| 13546 | /* 26099*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13547 | /* 26102*/ OPC_MoveParent, |
| 13548 | /* 26103*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 13549 | /* 26105*/ OPC_SwitchType /*2 cases */, 118, MVT::i32,// ->26226 |
| 13550 | /* 26108*/ OPC_MoveParent, |
| 13551 | /* 26109*/ OPC_Scope, 68, /*->26179*/ // 2 children in Scope |
| 13552 | /* 26111*/ OPC_MoveChild2, |
| 13553 | /* 26112*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 13554 | /* 26115*/ OPC_RecordChild0, // #3 = $val |
| 13555 | /* 26116*/ OPC_MoveParent, |
| 13556 | /* 26117*/ OPC_Scope, 19, /*->26138*/ // 3 children in Scope |
| 13557 | /* 26119*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 13558 | /* 26121*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13559 | /* 26123*/ OPC_EmitMergeInputChains1_0, |
| 13560 | /* 26124*/ OPC_EmitInteger, MVT::i32, 0, |
| 13561 | /* 26127*/ OPC_EmitConvertToTarget, 2, |
| 13562 | /* 26129*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13563 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13564 | // Src: (atomic_store (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_8>> - Complexity = 14 |
| 13565 | // Dst: (ATOMIC_STORE8_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 13566 | /* 26138*/ /*Scope*/ 19, /*->26158*/ |
| 13567 | /* 26139*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 13568 | /* 26141*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13569 | /* 26143*/ OPC_EmitMergeInputChains1_0, |
| 13570 | /* 26144*/ OPC_EmitInteger, MVT::i32, 0, |
| 13571 | /* 26147*/ OPC_EmitConvertToTarget, 2, |
| 13572 | /* 26149*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13573 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13574 | // Src: (atomic_store (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_16>> - Complexity = 14 |
| 13575 | // Dst: (ATOMIC_STORE16_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 13576 | /* 26158*/ /*Scope*/ 19, /*->26178*/ |
| 13577 | /* 26159*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 13578 | /* 26161*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13579 | /* 26163*/ OPC_EmitMergeInputChains1_0, |
| 13580 | /* 26164*/ OPC_EmitInteger, MVT::i32, 0, |
| 13581 | /* 26167*/ OPC_EmitConvertToTarget, 2, |
| 13582 | /* 26169*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE32_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13583 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13584 | // Src: (atomic_store (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_32>> - Complexity = 14 |
| 13585 | // Dst: (ATOMIC_STORE32_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 13586 | /* 26178*/ 0, /*End of Scope*/ |
| 13587 | /* 26179*/ /*Scope*/ 45, /*->26225*/ |
| 13588 | /* 26180*/ OPC_RecordChild2, // #3 = $val |
| 13589 | /* 26181*/ OPC_CheckChild2Type, MVT::i32, |
| 13590 | /* 26183*/ OPC_Scope, 19, /*->26204*/ // 2 children in Scope |
| 13591 | /* 26185*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 13592 | /* 26187*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13593 | /* 26189*/ OPC_EmitMergeInputChains1_0, |
| 13594 | /* 26190*/ OPC_EmitInteger, MVT::i32, 0, |
| 13595 | /* 26193*/ OPC_EmitConvertToTarget, 2, |
| 13596 | /* 26195*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13597 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13598 | // Src: (atomic_store (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_8>> - Complexity = 11 |
| 13599 | // Dst: (ATOMIC_STORE8_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 13600 | /* 26204*/ /*Scope*/ 19, /*->26224*/ |
| 13601 | /* 26205*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 13602 | /* 26207*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13603 | /* 26209*/ OPC_EmitMergeInputChains1_0, |
| 13604 | /* 26210*/ OPC_EmitInteger, MVT::i32, 0, |
| 13605 | /* 26213*/ OPC_EmitConvertToTarget, 2, |
| 13606 | /* 26215*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13607 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13608 | // Src: (atomic_store (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_16>> - Complexity = 11 |
| 13609 | // Dst: (ATOMIC_STORE16_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 13610 | /* 26224*/ 0, /*End of Scope*/ |
| 13611 | /* 26225*/ 0, /*End of Scope*/ |
| 13612 | /* 26226*/ /*SwitchType*/ 118, MVT::i64,// ->26346 |
| 13613 | /* 26228*/ OPC_MoveParent, |
| 13614 | /* 26229*/ OPC_Scope, 68, /*->26299*/ // 2 children in Scope |
| 13615 | /* 26231*/ OPC_MoveChild2, |
| 13616 | /* 26232*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 13617 | /* 26235*/ OPC_RecordChild0, // #3 = $val |
| 13618 | /* 26236*/ OPC_MoveParent, |
| 13619 | /* 26237*/ OPC_Scope, 19, /*->26258*/ // 3 children in Scope |
| 13620 | /* 26239*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 13621 | /* 26241*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13622 | /* 26243*/ OPC_EmitMergeInputChains1_0, |
| 13623 | /* 26244*/ OPC_EmitInteger, MVT::i32, 0, |
| 13624 | /* 26247*/ OPC_EmitConvertToTarget, 2, |
| 13625 | /* 26249*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13626 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13627 | // Src: (atomic_store (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_8>> - Complexity = 14 |
| 13628 | // Dst: (ATOMIC_STORE8_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 13629 | /* 26258*/ /*Scope*/ 19, /*->26278*/ |
| 13630 | /* 26259*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 13631 | /* 26261*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13632 | /* 26263*/ OPC_EmitMergeInputChains1_0, |
| 13633 | /* 26264*/ OPC_EmitInteger, MVT::i32, 0, |
| 13634 | /* 26267*/ OPC_EmitConvertToTarget, 2, |
| 13635 | /* 26269*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13636 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13637 | // Src: (atomic_store (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_16>> - Complexity = 14 |
| 13638 | // Dst: (ATOMIC_STORE16_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 13639 | /* 26278*/ /*Scope*/ 19, /*->26298*/ |
| 13640 | /* 26279*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 13641 | /* 26281*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13642 | /* 26283*/ OPC_EmitMergeInputChains1_0, |
| 13643 | /* 26284*/ OPC_EmitInteger, MVT::i32, 0, |
| 13644 | /* 26287*/ OPC_EmitConvertToTarget, 2, |
| 13645 | /* 26289*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE32_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13646 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13647 | // Src: (atomic_store (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_32>> - Complexity = 14 |
| 13648 | // Dst: (ATOMIC_STORE32_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 13649 | /* 26298*/ 0, /*End of Scope*/ |
| 13650 | /* 26299*/ /*Scope*/ 45, /*->26345*/ |
| 13651 | /* 26300*/ OPC_RecordChild2, // #3 = $val |
| 13652 | /* 26301*/ OPC_CheckChild2Type, MVT::i32, |
| 13653 | /* 26303*/ OPC_Scope, 19, /*->26324*/ // 2 children in Scope |
| 13654 | /* 26305*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 13655 | /* 26307*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13656 | /* 26309*/ OPC_EmitMergeInputChains1_0, |
| 13657 | /* 26310*/ OPC_EmitInteger, MVT::i32, 0, |
| 13658 | /* 26313*/ OPC_EmitConvertToTarget, 2, |
| 13659 | /* 26315*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13660 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13661 | // Src: (atomic_store (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_8>> - Complexity = 11 |
| 13662 | // Dst: (ATOMIC_STORE8_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 13663 | /* 26324*/ /*Scope*/ 19, /*->26344*/ |
| 13664 | /* 26325*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 13665 | /* 26327*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13666 | /* 26329*/ OPC_EmitMergeInputChains1_0, |
| 13667 | /* 26330*/ OPC_EmitInteger, MVT::i32, 0, |
| 13668 | /* 26333*/ OPC_EmitConvertToTarget, 2, |
| 13669 | /* 26335*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13670 | 4/*#Ops*/, 4, 5, 1, 3, |
| 13671 | // Src: (atomic_store (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_16>> - Complexity = 11 |
| 13672 | // Dst: (ATOMIC_STORE16_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 13673 | /* 26344*/ 0, /*End of Scope*/ |
| 13674 | /* 26345*/ 0, /*End of Scope*/ |
| 13675 | /* 26346*/ 0, // EndSwitchType |
| 13676 | /* 26347*/ /*SwitchOpcode*/ 56|128,2/*312*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->26663 |
| 13677 | /* 26351*/ OPC_RecordChild0, // #1 = $off |
| 13678 | /* 26352*/ OPC_MoveChild0, |
| 13679 | /* 26353*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 13680 | /* 26356*/ OPC_MoveParent, |
| 13681 | /* 26357*/ OPC_MoveParent, |
| 13682 | /* 26358*/ OPC_Scope, 51|128,1/*179*/, /*->26540*/ // 2 children in Scope |
| 13683 | /* 26361*/ OPC_MoveChild2, |
| 13684 | /* 26362*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 13685 | /* 26365*/ OPC_RecordChild0, // #2 = $val |
| 13686 | /* 26366*/ OPC_MoveParent, |
| 13687 | /* 26367*/ OPC_Scope, 56, /*->26425*/ // 3 children in Scope |
| 13688 | /* 26369*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 13689 | /* 26371*/ OPC_Scope, 25, /*->26398*/ // 2 children in Scope |
| 13690 | /* 26373*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13691 | /* 26375*/ OPC_EmitMergeInputChains1_0, |
| 13692 | /* 26376*/ OPC_EmitInteger, MVT::i32, 0, |
| 13693 | /* 26379*/ OPC_EmitInteger, MVT::i32, 0, |
| 13694 | /* 26382*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13695 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 13696 | /* 26389*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13697 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13698 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_8>> - Complexity = 13 |
| 13699 | // Dst: (ATOMIC_STORE8_I64_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 13700 | /* 26398*/ /*Scope*/ 25, /*->26424*/ |
| 13701 | /* 26399*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13702 | /* 26401*/ OPC_EmitMergeInputChains1_0, |
| 13703 | /* 26402*/ OPC_EmitInteger, MVT::i32, 0, |
| 13704 | /* 26405*/ OPC_EmitInteger, MVT::i64, 0, |
| 13705 | /* 26408*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13706 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 13707 | /* 26415*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13708 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13709 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_8>> - Complexity = 13 |
| 13710 | // Dst: (ATOMIC_STORE8_I64_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 13711 | /* 26424*/ 0, /*End of Scope*/ |
| 13712 | /* 26425*/ /*Scope*/ 56, /*->26482*/ |
| 13713 | /* 26426*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 13714 | /* 26428*/ OPC_Scope, 25, /*->26455*/ // 2 children in Scope |
| 13715 | /* 26430*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13716 | /* 26432*/ OPC_EmitMergeInputChains1_0, |
| 13717 | /* 26433*/ OPC_EmitInteger, MVT::i32, 0, |
| 13718 | /* 26436*/ OPC_EmitInteger, MVT::i32, 0, |
| 13719 | /* 26439*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13720 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 13721 | /* 26446*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13722 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13723 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_16>> - Complexity = 13 |
| 13724 | // Dst: (ATOMIC_STORE16_I64_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 13725 | /* 26455*/ /*Scope*/ 25, /*->26481*/ |
| 13726 | /* 26456*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13727 | /* 26458*/ OPC_EmitMergeInputChains1_0, |
| 13728 | /* 26459*/ OPC_EmitInteger, MVT::i32, 0, |
| 13729 | /* 26462*/ OPC_EmitInteger, MVT::i64, 0, |
| 13730 | /* 26465*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13731 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 13732 | /* 26472*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13733 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13734 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_16>> - Complexity = 13 |
| 13735 | // Dst: (ATOMIC_STORE16_I64_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 13736 | /* 26481*/ 0, /*End of Scope*/ |
| 13737 | /* 26482*/ /*Scope*/ 56, /*->26539*/ |
| 13738 | /* 26483*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 13739 | /* 26485*/ OPC_Scope, 25, /*->26512*/ // 2 children in Scope |
| 13740 | /* 26487*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13741 | /* 26489*/ OPC_EmitMergeInputChains1_0, |
| 13742 | /* 26490*/ OPC_EmitInteger, MVT::i32, 0, |
| 13743 | /* 26493*/ OPC_EmitInteger, MVT::i32, 0, |
| 13744 | /* 26496*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13745 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 13746 | /* 26503*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE32_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13747 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13748 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_32>> - Complexity = 13 |
| 13749 | // Dst: (ATOMIC_STORE32_I64_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 13750 | /* 26512*/ /*Scope*/ 25, /*->26538*/ |
| 13751 | /* 26513*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13752 | /* 26515*/ OPC_EmitMergeInputChains1_0, |
| 13753 | /* 26516*/ OPC_EmitInteger, MVT::i32, 0, |
| 13754 | /* 26519*/ OPC_EmitInteger, MVT::i64, 0, |
| 13755 | /* 26522*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13756 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 13757 | /* 26529*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE32_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13758 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13759 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_32>> - Complexity = 13 |
| 13760 | // Dst: (ATOMIC_STORE32_I64_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 13761 | /* 26538*/ 0, /*End of Scope*/ |
| 13762 | /* 26539*/ 0, /*End of Scope*/ |
| 13763 | /* 26540*/ /*Scope*/ 121, /*->26662*/ |
| 13764 | /* 26541*/ OPC_RecordChild2, // #2 = $val |
| 13765 | /* 26542*/ OPC_Scope, 58, /*->26602*/ // 2 children in Scope |
| 13766 | /* 26544*/ OPC_CheckChild2Type, MVT::i32, |
| 13767 | /* 26546*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 13768 | /* 26548*/ OPC_Scope, 25, /*->26575*/ // 2 children in Scope |
| 13769 | /* 26550*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13770 | /* 26552*/ OPC_EmitMergeInputChains1_0, |
| 13771 | /* 26553*/ OPC_EmitInteger, MVT::i32, 0, |
| 13772 | /* 26556*/ OPC_EmitInteger, MVT::i32, 0, |
| 13773 | /* 26559*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13774 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 13775 | /* 26566*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13776 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13777 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_32>> - Complexity = 10 |
| 13778 | // Dst: (ATOMIC_STORE_I32_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 13779 | /* 26575*/ /*Scope*/ 25, /*->26601*/ |
| 13780 | /* 26576*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13781 | /* 26578*/ OPC_EmitMergeInputChains1_0, |
| 13782 | /* 26579*/ OPC_EmitInteger, MVT::i32, 0, |
| 13783 | /* 26582*/ OPC_EmitInteger, MVT::i64, 0, |
| 13784 | /* 26585*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13785 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 13786 | /* 26592*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13787 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13788 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_32>> - Complexity = 10 |
| 13789 | // Dst: (ATOMIC_STORE_I32_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 13790 | /* 26601*/ 0, /*End of Scope*/ |
| 13791 | /* 26602*/ /*Scope*/ 58, /*->26661*/ |
| 13792 | /* 26603*/ OPC_CheckChild2Type, MVT::i64, |
| 13793 | /* 26605*/ OPC_CheckPredicate, 9, // Predicate_atomic_store_64 |
| 13794 | /* 26607*/ OPC_Scope, 25, /*->26634*/ // 2 children in Scope |
| 13795 | /* 26609*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13796 | /* 26611*/ OPC_EmitMergeInputChains1_0, |
| 13797 | /* 26612*/ OPC_EmitInteger, MVT::i32, 0, |
| 13798 | /* 26615*/ OPC_EmitInteger, MVT::i32, 0, |
| 13799 | /* 26618*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13800 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 13801 | /* 26625*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13802 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13803 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_store_64>> - Complexity = 10 |
| 13804 | // Dst: (ATOMIC_STORE_I64_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 13805 | /* 26634*/ /*Scope*/ 25, /*->26660*/ |
| 13806 | /* 26635*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13807 | /* 26637*/ OPC_EmitMergeInputChains1_0, |
| 13808 | /* 26638*/ OPC_EmitInteger, MVT::i32, 0, |
| 13809 | /* 26641*/ OPC_EmitInteger, MVT::i64, 0, |
| 13810 | /* 26644*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13811 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 13812 | /* 26651*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13813 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13814 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_store_64>> - Complexity = 10 |
| 13815 | // Dst: (ATOMIC_STORE_I64_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 13816 | /* 26660*/ 0, /*End of Scope*/ |
| 13817 | /* 26661*/ 0, /*End of Scope*/ |
| 13818 | /* 26662*/ 0, /*End of Scope*/ |
| 13819 | /* 26663*/ 0, // EndSwitchOpcode |
| 13820 | /* 26664*/ /*Scope*/ 69|128,1/*197*/, /*->26863*/ |
| 13821 | /* 26666*/ OPC_RecordChild1, // #1 = $off |
| 13822 | /* 26667*/ OPC_MoveChild1, |
| 13823 | /* 26668*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 13824 | /* 26671*/ OPC_MoveParent, |
| 13825 | /* 26672*/ OPC_MoveChild2, |
| 13826 | /* 26673*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 13827 | /* 26676*/ OPC_RecordChild0, // #2 = $val |
| 13828 | /* 26677*/ OPC_MoveParent, |
| 13829 | /* 26678*/ OPC_Scope, 60, /*->26740*/ // 3 children in Scope |
| 13830 | /* 26680*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 13831 | /* 26682*/ OPC_Scope, 27, /*->26711*/ // 2 children in Scope |
| 13832 | /* 26684*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13833 | /* 26686*/ OPC_EmitMergeInputChains1_0, |
| 13834 | /* 26687*/ OPC_EmitInteger, MVT::i32, 0, |
| 13835 | /* 26690*/ OPC_EmitConvertToTarget, 1, |
| 13836 | /* 26692*/ OPC_EmitInteger, MVT::i32, 0, |
| 13837 | /* 26695*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13838 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 13839 | /* 26702*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13840 | 4/*#Ops*/, 3, 4, 6, 2, |
| 13841 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_8>> - Complexity = 10 |
| 13842 | // Dst: (ATOMIC_STORE8_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 13843 | /* 26711*/ /*Scope*/ 27, /*->26739*/ |
| 13844 | /* 26712*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13845 | /* 26714*/ OPC_EmitMergeInputChains1_0, |
| 13846 | /* 26715*/ OPC_EmitInteger, MVT::i32, 0, |
| 13847 | /* 26718*/ OPC_EmitConvertToTarget, 1, |
| 13848 | /* 26720*/ OPC_EmitInteger, MVT::i64, 0, |
| 13849 | /* 26723*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13850 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 13851 | /* 26730*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13852 | 4/*#Ops*/, 3, 4, 6, 2, |
| 13853 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_8>> - Complexity = 10 |
| 13854 | // Dst: (ATOMIC_STORE8_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 13855 | /* 26739*/ 0, /*End of Scope*/ |
| 13856 | /* 26740*/ /*Scope*/ 60, /*->26801*/ |
| 13857 | /* 26741*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 13858 | /* 26743*/ OPC_Scope, 27, /*->26772*/ // 2 children in Scope |
| 13859 | /* 26745*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13860 | /* 26747*/ OPC_EmitMergeInputChains1_0, |
| 13861 | /* 26748*/ OPC_EmitInteger, MVT::i32, 0, |
| 13862 | /* 26751*/ OPC_EmitConvertToTarget, 1, |
| 13863 | /* 26753*/ OPC_EmitInteger, MVT::i32, 0, |
| 13864 | /* 26756*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13865 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 13866 | /* 26763*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13867 | 4/*#Ops*/, 3, 4, 6, 2, |
| 13868 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_16>> - Complexity = 10 |
| 13869 | // Dst: (ATOMIC_STORE16_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 13870 | /* 26772*/ /*Scope*/ 27, /*->26800*/ |
| 13871 | /* 26773*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13872 | /* 26775*/ OPC_EmitMergeInputChains1_0, |
| 13873 | /* 26776*/ OPC_EmitInteger, MVT::i32, 0, |
| 13874 | /* 26779*/ OPC_EmitConvertToTarget, 1, |
| 13875 | /* 26781*/ OPC_EmitInteger, MVT::i64, 0, |
| 13876 | /* 26784*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13877 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 13878 | /* 26791*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13879 | 4/*#Ops*/, 3, 4, 6, 2, |
| 13880 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_16>> - Complexity = 10 |
| 13881 | // Dst: (ATOMIC_STORE16_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 13882 | /* 26800*/ 0, /*End of Scope*/ |
| 13883 | /* 26801*/ /*Scope*/ 60, /*->26862*/ |
| 13884 | /* 26802*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 13885 | /* 26804*/ OPC_Scope, 27, /*->26833*/ // 2 children in Scope |
| 13886 | /* 26806*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13887 | /* 26808*/ OPC_EmitMergeInputChains1_0, |
| 13888 | /* 26809*/ OPC_EmitInteger, MVT::i32, 0, |
| 13889 | /* 26812*/ OPC_EmitConvertToTarget, 1, |
| 13890 | /* 26814*/ OPC_EmitInteger, MVT::i32, 0, |
| 13891 | /* 26817*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13892 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 13893 | /* 26824*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE32_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13894 | 4/*#Ops*/, 3, 4, 6, 2, |
| 13895 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_32>> - Complexity = 10 |
| 13896 | // Dst: (ATOMIC_STORE32_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 13897 | /* 26833*/ /*Scope*/ 27, /*->26861*/ |
| 13898 | /* 26834*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13899 | /* 26836*/ OPC_EmitMergeInputChains1_0, |
| 13900 | /* 26837*/ OPC_EmitInteger, MVT::i32, 0, |
| 13901 | /* 26840*/ OPC_EmitConvertToTarget, 1, |
| 13902 | /* 26842*/ OPC_EmitInteger, MVT::i64, 0, |
| 13903 | /* 26845*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13904 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 13905 | /* 26852*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE32_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13906 | 4/*#Ops*/, 3, 4, 6, 2, |
| 13907 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_32>> - Complexity = 10 |
| 13908 | // Dst: (ATOMIC_STORE32_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 13909 | /* 26861*/ 0, /*End of Scope*/ |
| 13910 | /* 26862*/ 0, /*End of Scope*/ |
| 13911 | /* 26863*/ /*Scope*/ 2|128,1/*130*/, /*->26995*/ |
| 13912 | /* 26865*/ OPC_MoveChild1, |
| 13913 | /* 26866*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 13914 | /* 26869*/ OPC_RecordChild0, // #1 = $off |
| 13915 | /* 26870*/ OPC_MoveChild0, |
| 13916 | /* 26871*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 13917 | /* 26874*/ OPC_MoveParent, |
| 13918 | /* 26875*/ OPC_MoveParent, |
| 13919 | /* 26876*/ OPC_RecordChild2, // #2 = $val |
| 13920 | /* 26877*/ OPC_CheckChild2Type, MVT::i32, |
| 13921 | /* 26879*/ OPC_Scope, 56, /*->26937*/ // 2 children in Scope |
| 13922 | /* 26881*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 13923 | /* 26883*/ OPC_Scope, 25, /*->26910*/ // 2 children in Scope |
| 13924 | /* 26885*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13925 | /* 26887*/ OPC_EmitMergeInputChains1_0, |
| 13926 | /* 26888*/ OPC_EmitInteger, MVT::i32, 0, |
| 13927 | /* 26891*/ OPC_EmitInteger, MVT::i32, 0, |
| 13928 | /* 26894*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13929 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 13930 | /* 26901*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13931 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13932 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_8>> - Complexity = 10 |
| 13933 | // Dst: (ATOMIC_STORE8_I32_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 13934 | /* 26910*/ /*Scope*/ 25, /*->26936*/ |
| 13935 | /* 26911*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13936 | /* 26913*/ OPC_EmitMergeInputChains1_0, |
| 13937 | /* 26914*/ OPC_EmitInteger, MVT::i32, 0, |
| 13938 | /* 26917*/ OPC_EmitInteger, MVT::i64, 0, |
| 13939 | /* 26920*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13940 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 13941 | /* 26927*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13942 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13943 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_8>> - Complexity = 10 |
| 13944 | // Dst: (ATOMIC_STORE8_I32_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 13945 | /* 26936*/ 0, /*End of Scope*/ |
| 13946 | /* 26937*/ /*Scope*/ 56, /*->26994*/ |
| 13947 | /* 26938*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 13948 | /* 26940*/ OPC_Scope, 25, /*->26967*/ // 2 children in Scope |
| 13949 | /* 26942*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13950 | /* 26944*/ OPC_EmitMergeInputChains1_0, |
| 13951 | /* 26945*/ OPC_EmitInteger, MVT::i32, 0, |
| 13952 | /* 26948*/ OPC_EmitInteger, MVT::i32, 0, |
| 13953 | /* 26951*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 13954 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 13955 | /* 26958*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13956 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13957 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_16>> - Complexity = 10 |
| 13958 | // Dst: (ATOMIC_STORE16_I32_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 13959 | /* 26967*/ /*Scope*/ 25, /*->26993*/ |
| 13960 | /* 26968*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 13961 | /* 26970*/ OPC_EmitMergeInputChains1_0, |
| 13962 | /* 26971*/ OPC_EmitInteger, MVT::i32, 0, |
| 13963 | /* 26974*/ OPC_EmitInteger, MVT::i64, 0, |
| 13964 | /* 26977*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 13965 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 13966 | /* 26984*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 13967 | 4/*#Ops*/, 3, 1, 5, 2, |
| 13968 | // Src: (atomic_store (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_16>> - Complexity = 10 |
| 13969 | // Dst: (ATOMIC_STORE16_I32_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 13970 | /* 26993*/ 0, /*End of Scope*/ |
| 13971 | /* 26994*/ 0, /*End of Scope*/ |
| 13972 | /* 26995*/ /*Scope*/ 95|128,4/*607*/, /*->27604*/ |
| 13973 | /* 26997*/ OPC_RecordChild1, // #1 = $addr |
| 13974 | /* 26998*/ OPC_Scope, 73, /*->27073*/ // 5 children in Scope |
| 13975 | /* 27000*/ OPC_CheckChild1Type, MVT::i32, |
| 13976 | /* 27002*/ OPC_MoveChild2, |
| 13977 | /* 27003*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 13978 | /* 27006*/ OPC_RecordChild0, // #2 = $val |
| 13979 | /* 27007*/ OPC_MoveParent, |
| 13980 | /* 27008*/ OPC_Scope, 20, /*->27030*/ // 3 children in Scope |
| 13981 | /* 27010*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 13982 | /* 27012*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13983 | /* 27014*/ OPC_EmitMergeInputChains1_0, |
| 13984 | /* 27015*/ OPC_EmitInteger, MVT::i32, 0, |
| 13985 | /* 27018*/ OPC_EmitInteger, MVT::i32, 0, |
| 13986 | /* 27021*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13987 | 4/*#Ops*/, 3, 4, 1, 2, |
| 13988 | // Src: (atomic_store I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_8>> - Complexity = 7 |
| 13989 | // Dst: (ATOMIC_STORE8_I64_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 13990 | /* 27030*/ /*Scope*/ 20, /*->27051*/ |
| 13991 | /* 27031*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 13992 | /* 27033*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 13993 | /* 27035*/ OPC_EmitMergeInputChains1_0, |
| 13994 | /* 27036*/ OPC_EmitInteger, MVT::i32, 0, |
| 13995 | /* 27039*/ OPC_EmitInteger, MVT::i32, 0, |
| 13996 | /* 27042*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 13997 | 4/*#Ops*/, 3, 4, 1, 2, |
| 13998 | // Src: (atomic_store I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_16>> - Complexity = 7 |
| 13999 | // Dst: (ATOMIC_STORE16_I64_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 14000 | /* 27051*/ /*Scope*/ 20, /*->27072*/ |
| 14001 | /* 27052*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 14002 | /* 27054*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14003 | /* 27056*/ OPC_EmitMergeInputChains1_0, |
| 14004 | /* 27057*/ OPC_EmitInteger, MVT::i32, 0, |
| 14005 | /* 27060*/ OPC_EmitInteger, MVT::i32, 0, |
| 14006 | /* 27063*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE32_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14007 | 4/*#Ops*/, 3, 4, 1, 2, |
| 14008 | // Src: (atomic_store I32:{ *:[i32] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_32>> - Complexity = 7 |
| 14009 | // Dst: (ATOMIC_STORE32_I64_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 14010 | /* 27072*/ 0, /*End of Scope*/ |
| 14011 | /* 27073*/ /*Scope*/ 73, /*->27147*/ |
| 14012 | /* 27074*/ OPC_CheckChild1Type, MVT::i64, |
| 14013 | /* 27076*/ OPC_MoveChild2, |
| 14014 | /* 27077*/ OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| 14015 | /* 27080*/ OPC_RecordChild0, // #2 = $val |
| 14016 | /* 27081*/ OPC_MoveParent, |
| 14017 | /* 27082*/ OPC_Scope, 20, /*->27104*/ // 3 children in Scope |
| 14018 | /* 27084*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 14019 | /* 27086*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14020 | /* 27088*/ OPC_EmitMergeInputChains1_0, |
| 14021 | /* 27089*/ OPC_EmitInteger, MVT::i32, 0, |
| 14022 | /* 27092*/ OPC_EmitInteger, MVT::i64, 0, |
| 14023 | /* 27095*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14024 | 4/*#Ops*/, 3, 4, 1, 2, |
| 14025 | // Src: (atomic_store I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_8>> - Complexity = 7 |
| 14026 | // Dst: (ATOMIC_STORE8_I64_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 14027 | /* 27104*/ /*Scope*/ 20, /*->27125*/ |
| 14028 | /* 27105*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 14029 | /* 27107*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14030 | /* 27109*/ OPC_EmitMergeInputChains1_0, |
| 14031 | /* 27110*/ OPC_EmitInteger, MVT::i32, 0, |
| 14032 | /* 27113*/ OPC_EmitInteger, MVT::i64, 0, |
| 14033 | /* 27116*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14034 | 4/*#Ops*/, 3, 4, 1, 2, |
| 14035 | // Src: (atomic_store I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_16>> - Complexity = 7 |
| 14036 | // Dst: (ATOMIC_STORE16_I64_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 14037 | /* 27125*/ /*Scope*/ 20, /*->27146*/ |
| 14038 | /* 27126*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 14039 | /* 27128*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14040 | /* 27130*/ OPC_EmitMergeInputChains1_0, |
| 14041 | /* 27131*/ OPC_EmitInteger, MVT::i32, 0, |
| 14042 | /* 27134*/ OPC_EmitInteger, MVT::i64, 0, |
| 14043 | /* 27137*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE32_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14044 | 4/*#Ops*/, 3, 4, 1, 2, |
| 14045 | // Src: (atomic_store I64:{ *:[i64] }:$addr, (trunc:{ *:[i32] } i64:{ *:[i64] }:$val))<<P:Predicate_atomic_store_32>> - Complexity = 7 |
| 14046 | // Dst: (ATOMIC_STORE32_I64_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 14047 | /* 27146*/ 0, /*End of Scope*/ |
| 14048 | /* 27147*/ /*Scope*/ 4|128,2/*260*/, /*->27409*/ |
| 14049 | /* 27149*/ OPC_MoveChild1, |
| 14050 | /* 27150*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 14051 | /* 27153*/ OPC_MoveParent, |
| 14052 | /* 27154*/ OPC_RecordChild2, // #2 = $val |
| 14053 | /* 27155*/ OPC_Scope, 59|128,1/*187*/, /*->27345*/ // 2 children in Scope |
| 14054 | /* 27158*/ OPC_CheckChild2Type, MVT::i32, |
| 14055 | /* 27160*/ OPC_Scope, 60, /*->27222*/ // 3 children in Scope |
| 14056 | /* 27162*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 14057 | /* 27164*/ OPC_Scope, 27, /*->27193*/ // 2 children in Scope |
| 14058 | /* 27166*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14059 | /* 27168*/ OPC_EmitMergeInputChains1_0, |
| 14060 | /* 27169*/ OPC_EmitInteger, MVT::i32, 0, |
| 14061 | /* 27172*/ OPC_EmitConvertToTarget, 1, |
| 14062 | /* 27174*/ OPC_EmitInteger, MVT::i32, 0, |
| 14063 | /* 27177*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 14064 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 14065 | /* 27184*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14066 | 4/*#Ops*/, 3, 4, 6, 2, |
| 14067 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_32>> - Complexity = 7 |
| 14068 | // Dst: (ATOMIC_STORE_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 14069 | /* 27193*/ /*Scope*/ 27, /*->27221*/ |
| 14070 | /* 27194*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14071 | /* 27196*/ OPC_EmitMergeInputChains1_0, |
| 14072 | /* 27197*/ OPC_EmitInteger, MVT::i32, 0, |
| 14073 | /* 27200*/ OPC_EmitConvertToTarget, 1, |
| 14074 | /* 27202*/ OPC_EmitInteger, MVT::i64, 0, |
| 14075 | /* 27205*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 14076 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 14077 | /* 27212*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14078 | 4/*#Ops*/, 3, 4, 6, 2, |
| 14079 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_32>> - Complexity = 7 |
| 14080 | // Dst: (ATOMIC_STORE_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 14081 | /* 27221*/ 0, /*End of Scope*/ |
| 14082 | /* 27222*/ /*Scope*/ 60, /*->27283*/ |
| 14083 | /* 27223*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 14084 | /* 27225*/ OPC_Scope, 27, /*->27254*/ // 2 children in Scope |
| 14085 | /* 27227*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14086 | /* 27229*/ OPC_EmitMergeInputChains1_0, |
| 14087 | /* 27230*/ OPC_EmitInteger, MVT::i32, 0, |
| 14088 | /* 27233*/ OPC_EmitConvertToTarget, 1, |
| 14089 | /* 27235*/ OPC_EmitInteger, MVT::i32, 0, |
| 14090 | /* 27238*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 14091 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 14092 | /* 27245*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14093 | 4/*#Ops*/, 3, 4, 6, 2, |
| 14094 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_8>> - Complexity = 7 |
| 14095 | // Dst: (ATOMIC_STORE8_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 14096 | /* 27254*/ /*Scope*/ 27, /*->27282*/ |
| 14097 | /* 27255*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14098 | /* 27257*/ OPC_EmitMergeInputChains1_0, |
| 14099 | /* 27258*/ OPC_EmitInteger, MVT::i32, 0, |
| 14100 | /* 27261*/ OPC_EmitConvertToTarget, 1, |
| 14101 | /* 27263*/ OPC_EmitInteger, MVT::i64, 0, |
| 14102 | /* 27266*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 14103 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 14104 | /* 27273*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14105 | 4/*#Ops*/, 3, 4, 6, 2, |
| 14106 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_8>> - Complexity = 7 |
| 14107 | // Dst: (ATOMIC_STORE8_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 14108 | /* 27282*/ 0, /*End of Scope*/ |
| 14109 | /* 27283*/ /*Scope*/ 60, /*->27344*/ |
| 14110 | /* 27284*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 14111 | /* 27286*/ OPC_Scope, 27, /*->27315*/ // 2 children in Scope |
| 14112 | /* 27288*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14113 | /* 27290*/ OPC_EmitMergeInputChains1_0, |
| 14114 | /* 27291*/ OPC_EmitInteger, MVT::i32, 0, |
| 14115 | /* 27294*/ OPC_EmitConvertToTarget, 1, |
| 14116 | /* 27296*/ OPC_EmitInteger, MVT::i32, 0, |
| 14117 | /* 27299*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 14118 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 14119 | /* 27306*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14120 | 4/*#Ops*/, 3, 4, 6, 2, |
| 14121 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_16>> - Complexity = 7 |
| 14122 | // Dst: (ATOMIC_STORE16_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 14123 | /* 27315*/ /*Scope*/ 27, /*->27343*/ |
| 14124 | /* 27316*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14125 | /* 27318*/ OPC_EmitMergeInputChains1_0, |
| 14126 | /* 27319*/ OPC_EmitInteger, MVT::i32, 0, |
| 14127 | /* 27322*/ OPC_EmitConvertToTarget, 1, |
| 14128 | /* 27324*/ OPC_EmitInteger, MVT::i64, 0, |
| 14129 | /* 27327*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 14130 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 14131 | /* 27334*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14132 | 4/*#Ops*/, 3, 4, 6, 2, |
| 14133 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_16>> - Complexity = 7 |
| 14134 | // Dst: (ATOMIC_STORE16_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 14135 | /* 27343*/ 0, /*End of Scope*/ |
| 14136 | /* 27344*/ 0, /*End of Scope*/ |
| 14137 | /* 27345*/ /*Scope*/ 62, /*->27408*/ |
| 14138 | /* 27346*/ OPC_CheckChild2Type, MVT::i64, |
| 14139 | /* 27348*/ OPC_CheckPredicate, 9, // Predicate_atomic_store_64 |
| 14140 | /* 27350*/ OPC_Scope, 27, /*->27379*/ // 2 children in Scope |
| 14141 | /* 27352*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14142 | /* 27354*/ OPC_EmitMergeInputChains1_0, |
| 14143 | /* 27355*/ OPC_EmitInteger, MVT::i32, 0, |
| 14144 | /* 27358*/ OPC_EmitConvertToTarget, 1, |
| 14145 | /* 27360*/ OPC_EmitInteger, MVT::i32, 0, |
| 14146 | /* 27363*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 14147 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 14148 | /* 27370*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14149 | 4/*#Ops*/, 3, 4, 6, 2, |
| 14150 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_store_64>> - Complexity = 7 |
| 14151 | // Dst: (ATOMIC_STORE_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 14152 | /* 27379*/ /*Scope*/ 27, /*->27407*/ |
| 14153 | /* 27380*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14154 | /* 27382*/ OPC_EmitMergeInputChains1_0, |
| 14155 | /* 27383*/ OPC_EmitInteger, MVT::i32, 0, |
| 14156 | /* 27386*/ OPC_EmitConvertToTarget, 1, |
| 14157 | /* 27388*/ OPC_EmitInteger, MVT::i64, 0, |
| 14158 | /* 27391*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 14159 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 14160 | /* 27398*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14161 | 4/*#Ops*/, 3, 4, 6, 2, |
| 14162 | // Src: (atomic_store (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_store_64>> - Complexity = 7 |
| 14163 | // Dst: (ATOMIC_STORE_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 14164 | /* 27407*/ 0, /*End of Scope*/ |
| 14165 | /* 27408*/ 0, /*End of Scope*/ |
| 14166 | /* 27409*/ /*Scope*/ 96, /*->27506*/ |
| 14167 | /* 27410*/ OPC_CheckChild1Type, MVT::i32, |
| 14168 | /* 27412*/ OPC_RecordChild2, // #2 = $val |
| 14169 | /* 27413*/ OPC_Scope, 67, /*->27482*/ // 2 children in Scope |
| 14170 | /* 27415*/ OPC_CheckChild2Type, MVT::i32, |
| 14171 | /* 27417*/ OPC_Scope, 20, /*->27439*/ // 3 children in Scope |
| 14172 | /* 27419*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 14173 | /* 27421*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14174 | /* 27423*/ OPC_EmitMergeInputChains1_0, |
| 14175 | /* 27424*/ OPC_EmitInteger, MVT::i32, 0, |
| 14176 | /* 27427*/ OPC_EmitInteger, MVT::i32, 0, |
| 14177 | /* 27430*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14178 | 4/*#Ops*/, 3, 4, 1, 2, |
| 14179 | // Src: (atomic_store I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_32>> - Complexity = 4 |
| 14180 | // Dst: (ATOMIC_STORE_I32_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 14181 | /* 27439*/ /*Scope*/ 20, /*->27460*/ |
| 14182 | /* 27440*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 14183 | /* 27442*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14184 | /* 27444*/ OPC_EmitMergeInputChains1_0, |
| 14185 | /* 27445*/ OPC_EmitInteger, MVT::i32, 0, |
| 14186 | /* 27448*/ OPC_EmitInteger, MVT::i32, 0, |
| 14187 | /* 27451*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14188 | 4/*#Ops*/, 3, 4, 1, 2, |
| 14189 | // Src: (atomic_store I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_8>> - Complexity = 4 |
| 14190 | // Dst: (ATOMIC_STORE8_I32_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 14191 | /* 27460*/ /*Scope*/ 20, /*->27481*/ |
| 14192 | /* 27461*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 14193 | /* 27463*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14194 | /* 27465*/ OPC_EmitMergeInputChains1_0, |
| 14195 | /* 27466*/ OPC_EmitInteger, MVT::i32, 0, |
| 14196 | /* 27469*/ OPC_EmitInteger, MVT::i32, 0, |
| 14197 | /* 27472*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14198 | 4/*#Ops*/, 3, 4, 1, 2, |
| 14199 | // Src: (atomic_store I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_16>> - Complexity = 4 |
| 14200 | // Dst: (ATOMIC_STORE16_I32_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 14201 | /* 27481*/ 0, /*End of Scope*/ |
| 14202 | /* 27482*/ /*Scope*/ 22, /*->27505*/ |
| 14203 | /* 27483*/ OPC_CheckChild2Type, MVT::i64, |
| 14204 | /* 27485*/ OPC_CheckPredicate, 9, // Predicate_atomic_store_64 |
| 14205 | /* 27487*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14206 | /* 27489*/ OPC_EmitMergeInputChains1_0, |
| 14207 | /* 27490*/ OPC_EmitInteger, MVT::i32, 0, |
| 14208 | /* 27493*/ OPC_EmitInteger, MVT::i32, 0, |
| 14209 | /* 27496*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14210 | 4/*#Ops*/, 3, 4, 1, 2, |
| 14211 | // Src: (atomic_store I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_store_64>> - Complexity = 4 |
| 14212 | // Dst: (ATOMIC_STORE_I64_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 14213 | /* 27505*/ 0, /*End of Scope*/ |
| 14214 | /* 27506*/ /*Scope*/ 96, /*->27603*/ |
| 14215 | /* 27507*/ OPC_CheckChild1Type, MVT::i64, |
| 14216 | /* 27509*/ OPC_RecordChild2, // #2 = $val |
| 14217 | /* 27510*/ OPC_Scope, 67, /*->27579*/ // 2 children in Scope |
| 14218 | /* 27512*/ OPC_CheckChild2Type, MVT::i32, |
| 14219 | /* 27514*/ OPC_Scope, 20, /*->27536*/ // 3 children in Scope |
| 14220 | /* 27516*/ OPC_CheckPredicate, 6, // Predicate_atomic_store_32 |
| 14221 | /* 27518*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14222 | /* 27520*/ OPC_EmitMergeInputChains1_0, |
| 14223 | /* 27521*/ OPC_EmitInteger, MVT::i32, 0, |
| 14224 | /* 27524*/ OPC_EmitInteger, MVT::i64, 0, |
| 14225 | /* 27527*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14226 | 4/*#Ops*/, 3, 4, 1, 2, |
| 14227 | // Src: (atomic_store I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_32>> - Complexity = 4 |
| 14228 | // Dst: (ATOMIC_STORE_I32_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 14229 | /* 27536*/ /*Scope*/ 20, /*->27557*/ |
| 14230 | /* 27537*/ OPC_CheckPredicate, 1, // Predicate_atomic_store_8 |
| 14231 | /* 27539*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14232 | /* 27541*/ OPC_EmitMergeInputChains1_0, |
| 14233 | /* 27542*/ OPC_EmitInteger, MVT::i32, 0, |
| 14234 | /* 27545*/ OPC_EmitInteger, MVT::i64, 0, |
| 14235 | /* 27548*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14236 | 4/*#Ops*/, 3, 4, 1, 2, |
| 14237 | // Src: (atomic_store I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_8>> - Complexity = 4 |
| 14238 | // Dst: (ATOMIC_STORE8_I32_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 14239 | /* 27557*/ /*Scope*/ 20, /*->27578*/ |
| 14240 | /* 27558*/ OPC_CheckPredicate, 2, // Predicate_atomic_store_16 |
| 14241 | /* 27560*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14242 | /* 27562*/ OPC_EmitMergeInputChains1_0, |
| 14243 | /* 27563*/ OPC_EmitInteger, MVT::i32, 0, |
| 14244 | /* 27566*/ OPC_EmitInteger, MVT::i64, 0, |
| 14245 | /* 27569*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14246 | 4/*#Ops*/, 3, 4, 1, 2, |
| 14247 | // Src: (atomic_store I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_store_16>> - Complexity = 4 |
| 14248 | // Dst: (ATOMIC_STORE16_I32_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 14249 | /* 27578*/ 0, /*End of Scope*/ |
| 14250 | /* 27579*/ /*Scope*/ 22, /*->27602*/ |
| 14251 | /* 27580*/ OPC_CheckChild2Type, MVT::i64, |
| 14252 | /* 27582*/ OPC_CheckPredicate, 9, // Predicate_atomic_store_64 |
| 14253 | /* 27584*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 14254 | /* 27586*/ OPC_EmitMergeInputChains1_0, |
| 14255 | /* 27587*/ OPC_EmitInteger, MVT::i32, 0, |
| 14256 | /* 27590*/ OPC_EmitInteger, MVT::i64, 0, |
| 14257 | /* 27593*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14258 | 4/*#Ops*/, 3, 4, 1, 2, |
| 14259 | // Src: (atomic_store I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_store_64>> - Complexity = 4 |
| 14260 | // Dst: (ATOMIC_STORE_I64_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 14261 | /* 27602*/ 0, /*End of Scope*/ |
| 14262 | /* 27603*/ 0, /*End of Scope*/ |
| 14263 | /* 27604*/ 0, /*End of Scope*/ |
| 14264 | /* 27605*/ /*SwitchOpcode*/ 36|128,3/*420*/, TARGET_VAL(ISD::INTRINSIC_VOID),// ->28029 |
| 14265 | /* 27609*/ OPC_Scope, 44|128,2/*300*/, /*->27912*/ // 3 children in Scope |
| 14266 | /* 27612*/ OPC_RecordMemRef, |
| 14267 | /* 27613*/ OPC_RecordNode, // #0 = 'intrinsic_void' chained node |
| 14268 | /* 27614*/ OPC_Scope, 73, /*->27689*/ // 4 children in Scope |
| 14269 | /* 27616*/ OPC_CheckChild1Integer, 66|128,67/*8642*/, |
| 14270 | /* 27619*/ OPC_RecordChild2, // #1 = $addr |
| 14271 | /* 27620*/ OPC_Scope, 32, /*->27654*/ // 2 children in Scope |
| 14272 | /* 27622*/ OPC_CheckChild2Type, MVT::i32, |
| 14273 | /* 27624*/ OPC_RecordChild3, // #2 = $vec |
| 14274 | /* 27625*/ OPC_RecordChild4, // #3 = $idx |
| 14275 | /* 27626*/ OPC_MoveChild4, |
| 14276 | /* 27627*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 14277 | /* 27630*/ OPC_CheckPredicate, 4, // Predicate_LaneIdx16 |
| 14278 | /* 27632*/ OPC_MoveParent, |
| 14279 | /* 27633*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14280 | /* 27635*/ OPC_EmitMergeInputChains1_0, |
| 14281 | /* 27636*/ OPC_EmitInteger, MVT::i32, 0, |
| 14282 | /* 27639*/ OPC_EmitInteger, MVT::i32, 0, |
| 14283 | /* 27642*/ OPC_EmitConvertToTarget, 3, |
| 14284 | /* 27644*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_LANE_I8x16_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14285 | 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 14286 | // Src: (intrinsic_void 8642:{ *:[iPTR] }, I32:{ *:[i32] }:$addr, V128:{ *:[v16i8] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx16>>:$idx) - Complexity = 12 |
| 14287 | // Dst: (STORE_LANE_I8x16_A32 0:{ *:[i32] }, 0:{ *:[i32] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i32] }:$addr, ?:{ *:[v16i8] }:$vec) |
| 14288 | /* 27654*/ /*Scope*/ 33, /*->27688*/ |
| 14289 | /* 27655*/ OPC_CheckChild2Type, MVT::i64, |
| 14290 | /* 27657*/ OPC_RecordChild3, // #2 = $vec |
| 14291 | /* 27658*/ OPC_RecordChild4, // #3 = $idx |
| 14292 | /* 27659*/ OPC_MoveChild4, |
| 14293 | /* 27660*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 14294 | /* 27663*/ OPC_CheckPredicate, 4, // Predicate_LaneIdx16 |
| 14295 | /* 27665*/ OPC_MoveParent, |
| 14296 | /* 27666*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14297 | /* 27668*/ OPC_EmitMergeInputChains1_0, |
| 14298 | /* 27669*/ OPC_EmitInteger, MVT::i32, 0, |
| 14299 | /* 27672*/ OPC_EmitInteger, MVT::i64, 0, |
| 14300 | /* 27675*/ OPC_EmitConvertToTarget, 3, |
| 14301 | /* 27677*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::STORE_LANE_I8x16_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14302 | MVT::v16i8, 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 14303 | // Src: (intrinsic_void 8642:{ *:[iPTR] }, I64:{ *:[i64] }:$addr, V128:{ *:[v16i8] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx16>>:$idx) - Complexity = 12 |
| 14304 | // Dst: (STORE_LANE_I8x16_A64:{ *:[v16i8] } 0:{ *:[i32] }, 0:{ *:[i64] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i64] }:$addr, ?:{ *:[v16i8] }:$vec) |
| 14305 | /* 27688*/ 0, /*End of Scope*/ |
| 14306 | /* 27689*/ /*Scope*/ 73, /*->27763*/ |
| 14307 | /* 27690*/ OPC_CheckChild1Integer, 63|128,67/*8639*/, |
| 14308 | /* 27693*/ OPC_RecordChild2, // #1 = $addr |
| 14309 | /* 27694*/ OPC_Scope, 32, /*->27728*/ // 2 children in Scope |
| 14310 | /* 27696*/ OPC_CheckChild2Type, MVT::i32, |
| 14311 | /* 27698*/ OPC_RecordChild3, // #2 = $vec |
| 14312 | /* 27699*/ OPC_RecordChild4, // #3 = $idx |
| 14313 | /* 27700*/ OPC_MoveChild4, |
| 14314 | /* 27701*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 14315 | /* 27704*/ OPC_CheckPredicate, 5, // Predicate_LaneIdx8 |
| 14316 | /* 27706*/ OPC_MoveParent, |
| 14317 | /* 27707*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14318 | /* 27709*/ OPC_EmitMergeInputChains1_0, |
| 14319 | /* 27710*/ OPC_EmitInteger, MVT::i32, 0, |
| 14320 | /* 27713*/ OPC_EmitInteger, MVT::i32, 0, |
| 14321 | /* 27716*/ OPC_EmitConvertToTarget, 3, |
| 14322 | /* 27718*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_LANE_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14323 | 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 14324 | // Src: (intrinsic_void 8639:{ *:[iPTR] }, I32:{ *:[i32] }:$addr, V128:{ *:[v8i16] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx8>>:$idx) - Complexity = 12 |
| 14325 | // Dst: (STORE_LANE_I16x8_A32 0:{ *:[i32] }, 0:{ *:[i32] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i32] }:$addr, ?:{ *:[v8i16] }:$vec) |
| 14326 | /* 27728*/ /*Scope*/ 33, /*->27762*/ |
| 14327 | /* 27729*/ OPC_CheckChild2Type, MVT::i64, |
| 14328 | /* 27731*/ OPC_RecordChild3, // #2 = $vec |
| 14329 | /* 27732*/ OPC_RecordChild4, // #3 = $idx |
| 14330 | /* 27733*/ OPC_MoveChild4, |
| 14331 | /* 27734*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 14332 | /* 27737*/ OPC_CheckPredicate, 5, // Predicate_LaneIdx8 |
| 14333 | /* 27739*/ OPC_MoveParent, |
| 14334 | /* 27740*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14335 | /* 27742*/ OPC_EmitMergeInputChains1_0, |
| 14336 | /* 27743*/ OPC_EmitInteger, MVT::i32, 0, |
| 14337 | /* 27746*/ OPC_EmitInteger, MVT::i64, 0, |
| 14338 | /* 27749*/ OPC_EmitConvertToTarget, 3, |
| 14339 | /* 27751*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::STORE_LANE_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14340 | MVT::v16i8, 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 14341 | // Src: (intrinsic_void 8639:{ *:[iPTR] }, I64:{ *:[i64] }:$addr, V128:{ *:[v8i16] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx8>>:$idx) - Complexity = 12 |
| 14342 | // Dst: (STORE_LANE_I16x8_A64:{ *:[v16i8] } 0:{ *:[i32] }, 0:{ *:[i64] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i64] }:$addr, ?:{ *:[v8i16] }:$vec) |
| 14343 | /* 27762*/ 0, /*End of Scope*/ |
| 14344 | /* 27763*/ /*Scope*/ 73, /*->27837*/ |
| 14345 | /* 27764*/ OPC_CheckChild1Integer, 64|128,67/*8640*/, |
| 14346 | /* 27767*/ OPC_RecordChild2, // #1 = $addr |
| 14347 | /* 27768*/ OPC_Scope, 32, /*->27802*/ // 2 children in Scope |
| 14348 | /* 27770*/ OPC_CheckChild2Type, MVT::i32, |
| 14349 | /* 27772*/ OPC_RecordChild3, // #2 = $vec |
| 14350 | /* 27773*/ OPC_RecordChild4, // #3 = $idx |
| 14351 | /* 27774*/ OPC_MoveChild4, |
| 14352 | /* 27775*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 14353 | /* 27778*/ OPC_CheckPredicate, 7, // Predicate_LaneIdx4 |
| 14354 | /* 27780*/ OPC_MoveParent, |
| 14355 | /* 27781*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14356 | /* 27783*/ OPC_EmitMergeInputChains1_0, |
| 14357 | /* 27784*/ OPC_EmitInteger, MVT::i32, 0, |
| 14358 | /* 27787*/ OPC_EmitInteger, MVT::i32, 0, |
| 14359 | /* 27790*/ OPC_EmitConvertToTarget, 3, |
| 14360 | /* 27792*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_LANE_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14361 | 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 14362 | // Src: (intrinsic_void 8640:{ *:[iPTR] }, I32:{ *:[i32] }:$addr, V128:{ *:[v4i32] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx4>>:$idx) - Complexity = 12 |
| 14363 | // Dst: (STORE_LANE_I32x4_A32 0:{ *:[i32] }, 0:{ *:[i32] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i32] }:$addr, ?:{ *:[v4i32] }:$vec) |
| 14364 | /* 27802*/ /*Scope*/ 33, /*->27836*/ |
| 14365 | /* 27803*/ OPC_CheckChild2Type, MVT::i64, |
| 14366 | /* 27805*/ OPC_RecordChild3, // #2 = $vec |
| 14367 | /* 27806*/ OPC_RecordChild4, // #3 = $idx |
| 14368 | /* 27807*/ OPC_MoveChild4, |
| 14369 | /* 27808*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 14370 | /* 27811*/ OPC_CheckPredicate, 7, // Predicate_LaneIdx4 |
| 14371 | /* 27813*/ OPC_MoveParent, |
| 14372 | /* 27814*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14373 | /* 27816*/ OPC_EmitMergeInputChains1_0, |
| 14374 | /* 27817*/ OPC_EmitInteger, MVT::i32, 0, |
| 14375 | /* 27820*/ OPC_EmitInteger, MVT::i64, 0, |
| 14376 | /* 27823*/ OPC_EmitConvertToTarget, 3, |
| 14377 | /* 27825*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::STORE_LANE_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14378 | MVT::v16i8, 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 14379 | // Src: (intrinsic_void 8640:{ *:[iPTR] }, I64:{ *:[i64] }:$addr, V128:{ *:[v4i32] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx4>>:$idx) - Complexity = 12 |
| 14380 | // Dst: (STORE_LANE_I32x4_A64:{ *:[v16i8] } 0:{ *:[i32] }, 0:{ *:[i64] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i64] }:$addr, ?:{ *:[v4i32] }:$vec) |
| 14381 | /* 27836*/ 0, /*End of Scope*/ |
| 14382 | /* 27837*/ /*Scope*/ 73, /*->27911*/ |
| 14383 | /* 27838*/ OPC_CheckChild1Integer, 65|128,67/*8641*/, |
| 14384 | /* 27841*/ OPC_RecordChild2, // #1 = $addr |
| 14385 | /* 27842*/ OPC_Scope, 32, /*->27876*/ // 2 children in Scope |
| 14386 | /* 27844*/ OPC_CheckChild2Type, MVT::i32, |
| 14387 | /* 27846*/ OPC_RecordChild3, // #2 = $vec |
| 14388 | /* 27847*/ OPC_RecordChild4, // #3 = $idx |
| 14389 | /* 27848*/ OPC_MoveChild4, |
| 14390 | /* 27849*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 14391 | /* 27852*/ OPC_CheckPredicate, 8, // Predicate_LaneIdx2 |
| 14392 | /* 27854*/ OPC_MoveParent, |
| 14393 | /* 27855*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14394 | /* 27857*/ OPC_EmitMergeInputChains1_0, |
| 14395 | /* 27858*/ OPC_EmitInteger, MVT::i32, 0, |
| 14396 | /* 27861*/ OPC_EmitInteger, MVT::i32, 0, |
| 14397 | /* 27864*/ OPC_EmitConvertToTarget, 3, |
| 14398 | /* 27866*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_LANE_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14399 | 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 14400 | // Src: (intrinsic_void 8641:{ *:[iPTR] }, I32:{ *:[i32] }:$addr, V128:{ *:[v2i64] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx2>>:$idx) - Complexity = 12 |
| 14401 | // Dst: (STORE_LANE_I64x2_A32 0:{ *:[i32] }, 0:{ *:[i32] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i32] }:$addr, ?:{ *:[v2i64] }:$vec) |
| 14402 | /* 27876*/ /*Scope*/ 33, /*->27910*/ |
| 14403 | /* 27877*/ OPC_CheckChild2Type, MVT::i64, |
| 14404 | /* 27879*/ OPC_RecordChild3, // #2 = $vec |
| 14405 | /* 27880*/ OPC_RecordChild4, // #3 = $idx |
| 14406 | /* 27881*/ OPC_MoveChild4, |
| 14407 | /* 27882*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 14408 | /* 27885*/ OPC_CheckPredicate, 8, // Predicate_LaneIdx2 |
| 14409 | /* 27887*/ OPC_MoveParent, |
| 14410 | /* 27888*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14411 | /* 27890*/ OPC_EmitMergeInputChains1_0, |
| 14412 | /* 27891*/ OPC_EmitInteger, MVT::i32, 0, |
| 14413 | /* 27894*/ OPC_EmitInteger, MVT::i64, 0, |
| 14414 | /* 27897*/ OPC_EmitConvertToTarget, 3, |
| 14415 | /* 27899*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::STORE_LANE_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14416 | MVT::v16i8, 5/*#Ops*/, 4, 5, 6, 1, 2, |
| 14417 | // Src: (intrinsic_void 8641:{ *:[iPTR] }, I64:{ *:[i64] }:$addr, V128:{ *:[v2i64] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx2>>:$idx) - Complexity = 12 |
| 14418 | // Dst: (STORE_LANE_I64x2_A64:{ *:[v16i8] } 0:{ *:[i32] }, 0:{ *:[i64] }, (imm:{ *:[i32] }):$idx, ?:{ *:[i64] }:$addr, ?:{ *:[v2i64] }:$vec) |
| 14419 | /* 27910*/ 0, /*End of Scope*/ |
| 14420 | /* 27911*/ 0, /*End of Scope*/ |
| 14421 | /* 27912*/ /*Scope*/ 16, /*->27929*/ |
| 14422 | /* 27913*/ OPC_RecordNode, // #0 = 'intrinsic_void' chained node |
| 14423 | /* 27914*/ OPC_CheckChild1Integer, 60|128,67/*8636*/, |
| 14424 | /* 27917*/ OPC_CheckPatternPredicate, 9, // (Subtarget->hasExceptionHandling()) |
| 14425 | /* 27919*/ OPC_EmitMergeInputChains1_0, |
| 14426 | /* 27920*/ OPC_EmitInteger, MVT::i32, 0, |
| 14427 | /* 27923*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::RETHROW), 0|OPFL_Chain, |
| 14428 | 1/*#Ops*/, 1, |
| 14429 | // Src: (intrinsic_void 8636:{ *:[iPTR] }) - Complexity = 8 |
| 14430 | // Dst: (RETHROW 0:{ *:[i32] }) |
| 14431 | /* 27929*/ /*Scope*/ 98, /*->28028*/ |
| 14432 | /* 27930*/ OPC_RecordMemRef, |
| 14433 | /* 27931*/ OPC_RecordNode, // #0 = 'intrinsic_void' chained node |
| 14434 | /* 27932*/ OPC_Scope, 46, /*->27980*/ // 2 children in Scope |
| 14435 | /* 27934*/ OPC_CheckChild1Integer, 55|128,67/*8631*/, |
| 14436 | /* 27937*/ OPC_RecordChild2, // #1 = $addr |
| 14437 | /* 27938*/ OPC_Scope, 19, /*->27959*/ // 2 children in Scope |
| 14438 | /* 27940*/ OPC_CheckChild2Type, MVT::i32, |
| 14439 | /* 27942*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14440 | /* 27944*/ OPC_EmitMergeInputChains1_0, |
| 14441 | /* 27945*/ OPC_EmitInteger, MVT::i32, 0, |
| 14442 | /* 27948*/ OPC_EmitInteger, MVT::i32, 0, |
| 14443 | /* 27951*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::PREFETCH_T_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14444 | 3/*#Ops*/, 2, 3, 1, |
| 14445 | // Src: (intrinsic_void 8631:{ *:[iPTR] }, I32:{ *:[i32] }:$addr) - Complexity = 8 |
| 14446 | // Dst: (PREFETCH_T_A32 0:{ *:[i32] }, 0:{ *:[i32] }, ?:{ *:[i32] }:$addr) |
| 14447 | /* 27959*/ /*Scope*/ 19, /*->27979*/ |
| 14448 | /* 27960*/ OPC_CheckChild2Type, MVT::i64, |
| 14449 | /* 27962*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14450 | /* 27964*/ OPC_EmitMergeInputChains1_0, |
| 14451 | /* 27965*/ OPC_EmitInteger, MVT::i32, 0, |
| 14452 | /* 27968*/ OPC_EmitInteger, MVT::i64, 0, |
| 14453 | /* 27971*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::PREFETCH_T_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14454 | 3/*#Ops*/, 2, 3, 1, |
| 14455 | // Src: (intrinsic_void 8631:{ *:[iPTR] }, I64:{ *:[i64] }:$addr) - Complexity = 8 |
| 14456 | // Dst: (PREFETCH_T_A64 0:{ *:[i32] }, 0:{ *:[i64] }, ?:{ *:[i64] }:$addr) |
| 14457 | /* 27979*/ 0, /*End of Scope*/ |
| 14458 | /* 27980*/ /*Scope*/ 46, /*->28027*/ |
| 14459 | /* 27981*/ OPC_CheckChild1Integer, 54|128,67/*8630*/, |
| 14460 | /* 27984*/ OPC_RecordChild2, // #1 = $addr |
| 14461 | /* 27985*/ OPC_Scope, 19, /*->28006*/ // 2 children in Scope |
| 14462 | /* 27987*/ OPC_CheckChild2Type, MVT::i32, |
| 14463 | /* 27989*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14464 | /* 27991*/ OPC_EmitMergeInputChains1_0, |
| 14465 | /* 27992*/ OPC_EmitInteger, MVT::i32, 0, |
| 14466 | /* 27995*/ OPC_EmitInteger, MVT::i32, 0, |
| 14467 | /* 27998*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::PREFETCH_NT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14468 | 3/*#Ops*/, 2, 3, 1, |
| 14469 | // Src: (intrinsic_void 8630:{ *:[iPTR] }, I32:{ *:[i32] }:$addr) - Complexity = 8 |
| 14470 | // Dst: (PREFETCH_NT_A32 0:{ *:[i32] }, 0:{ *:[i32] }, ?:{ *:[i32] }:$addr) |
| 14471 | /* 28006*/ /*Scope*/ 19, /*->28026*/ |
| 14472 | /* 28007*/ OPC_CheckChild2Type, MVT::i64, |
| 14473 | /* 28009*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14474 | /* 28011*/ OPC_EmitMergeInputChains1_0, |
| 14475 | /* 28012*/ OPC_EmitInteger, MVT::i32, 0, |
| 14476 | /* 28015*/ OPC_EmitInteger, MVT::i64, 0, |
| 14477 | /* 28018*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::PREFETCH_NT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14478 | 3/*#Ops*/, 2, 3, 1, |
| 14479 | // Src: (intrinsic_void 8630:{ *:[iPTR] }, I64:{ *:[i64] }:$addr) - Complexity = 8 |
| 14480 | // Dst: (PREFETCH_NT_A64 0:{ *:[i32] }, 0:{ *:[i64] }, ?:{ *:[i64] }:$addr) |
| 14481 | /* 28026*/ 0, /*End of Scope*/ |
| 14482 | /* 28027*/ 0, /*End of Scope*/ |
| 14483 | /* 28028*/ 0, /*End of Scope*/ |
| 14484 | /* 28029*/ /*SwitchOpcode*/ 8|128,73/*9352*/, TARGET_VAL(ISD::LOAD),// ->37385 |
| 14485 | /* 28033*/ OPC_RecordMemRef, |
| 14486 | /* 28034*/ OPC_RecordNode, // #0 = 'ld' chained node |
| 14487 | /* 28035*/ OPC_Scope, 3|128,21/*2691*/, /*->30729*/ // 8 children in Scope |
| 14488 | /* 28038*/ OPC_MoveChild1, |
| 14489 | /* 28039*/ OPC_SwitchOpcode /*3 cases */, 51|128,6/*819*/, TARGET_VAL(ISD::ADD),// ->28863 |
| 14490 | /* 28044*/ OPC_RecordChild0, // #1 = $addr |
| 14491 | /* 28045*/ OPC_RecordChild1, // #2 = $off |
| 14492 | /* 28046*/ OPC_MoveChild1, |
| 14493 | /* 28047*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 14494 | /* 28050*/ OPC_MoveParent, |
| 14495 | /* 28051*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 14496 | /* 28053*/ OPC_SwitchType /*2 cases */, 17|128,3/*401*/, MVT::i32,// ->28458 |
| 14497 | /* 28057*/ OPC_MoveParent, |
| 14498 | /* 28058*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 14499 | /* 28060*/ OPC_Scope, 42, /*->28104*/ // 12 children in Scope |
| 14500 | /* 28062*/ OPC_CheckPredicate, 11, // Predicate_load |
| 14501 | /* 28064*/ OPC_SwitchType /*2 cases */, 17, MVT::i32,// ->28084 |
| 14502 | /* 28067*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14503 | /* 28069*/ OPC_EmitMergeInputChains1_0, |
| 14504 | /* 28070*/ OPC_EmitInteger, MVT::i32, 0, |
| 14505 | /* 28073*/ OPC_EmitConvertToTarget, 2, |
| 14506 | /* 28075*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14507 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14508 | // Src: (ld:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 14509 | // Dst: (LOAD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14510 | /* 28084*/ /*SwitchType*/ 17, MVT::i64,// ->28103 |
| 14511 | /* 28086*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14512 | /* 28088*/ OPC_EmitMergeInputChains1_0, |
| 14513 | /* 28089*/ OPC_EmitInteger, MVT::i32, 0, |
| 14514 | /* 28092*/ OPC_EmitConvertToTarget, 2, |
| 14515 | /* 28094*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14516 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14517 | // Src: (ld:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 14518 | // Dst: (LOAD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14519 | /* 28103*/ 0, // EndSwitchType |
| 14520 | /* 28104*/ /*Scope*/ 23, /*->28128*/ |
| 14521 | /* 28105*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14522 | /* 28107*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 14523 | /* 28109*/ OPC_CheckType, MVT::i32, |
| 14524 | /* 28111*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14525 | /* 28113*/ OPC_EmitMergeInputChains1_0, |
| 14526 | /* 28114*/ OPC_EmitInteger, MVT::i32, 0, |
| 14527 | /* 28117*/ OPC_EmitConvertToTarget, 2, |
| 14528 | /* 28119*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14529 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14530 | // Src: (ld:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 11 |
| 14531 | // Dst: (LOAD8_S_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14532 | /* 28128*/ /*Scope*/ 23, /*->28152*/ |
| 14533 | /* 28129*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14534 | /* 28131*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 14535 | /* 28133*/ OPC_CheckType, MVT::i32, |
| 14536 | /* 28135*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14537 | /* 28137*/ OPC_EmitMergeInputChains1_0, |
| 14538 | /* 28138*/ OPC_EmitInteger, MVT::i32, 0, |
| 14539 | /* 28141*/ OPC_EmitConvertToTarget, 2, |
| 14540 | /* 28143*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14541 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14542 | // Src: (ld:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 11 |
| 14543 | // Dst: (LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14544 | /* 28152*/ /*Scope*/ 23, /*->28176*/ |
| 14545 | /* 28153*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14546 | /* 28155*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 14547 | /* 28157*/ OPC_CheckType, MVT::i32, |
| 14548 | /* 28159*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14549 | /* 28161*/ OPC_EmitMergeInputChains1_0, |
| 14550 | /* 28162*/ OPC_EmitInteger, MVT::i32, 0, |
| 14551 | /* 28165*/ OPC_EmitConvertToTarget, 2, |
| 14552 | /* 28167*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14553 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14554 | // Src: (ld:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 11 |
| 14555 | // Dst: (LOAD16_S_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14556 | /* 28176*/ /*Scope*/ 23, /*->28200*/ |
| 14557 | /* 28177*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14558 | /* 28179*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 14559 | /* 28181*/ OPC_CheckType, MVT::i32, |
| 14560 | /* 28183*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14561 | /* 28185*/ OPC_EmitMergeInputChains1_0, |
| 14562 | /* 28186*/ OPC_EmitInteger, MVT::i32, 0, |
| 14563 | /* 28189*/ OPC_EmitConvertToTarget, 2, |
| 14564 | /* 28191*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14565 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14566 | // Src: (ld:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 11 |
| 14567 | // Dst: (LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14568 | /* 28200*/ /*Scope*/ 23, /*->28224*/ |
| 14569 | /* 28201*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14570 | /* 28203*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 14571 | /* 28205*/ OPC_CheckType, MVT::i64, |
| 14572 | /* 28207*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14573 | /* 28209*/ OPC_EmitMergeInputChains1_0, |
| 14574 | /* 28210*/ OPC_EmitInteger, MVT::i32, 0, |
| 14575 | /* 28213*/ OPC_EmitConvertToTarget, 2, |
| 14576 | /* 28215*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14577 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14578 | // Src: (ld:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 11 |
| 14579 | // Dst: (LOAD8_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14580 | /* 28224*/ /*Scope*/ 23, /*->28248*/ |
| 14581 | /* 28225*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14582 | /* 28227*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 14583 | /* 28229*/ OPC_CheckType, MVT::i64, |
| 14584 | /* 28231*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14585 | /* 28233*/ OPC_EmitMergeInputChains1_0, |
| 14586 | /* 28234*/ OPC_EmitInteger, MVT::i32, 0, |
| 14587 | /* 28237*/ OPC_EmitConvertToTarget, 2, |
| 14588 | /* 28239*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14589 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14590 | // Src: (ld:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 11 |
| 14591 | // Dst: (LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14592 | /* 28248*/ /*Scope*/ 23, /*->28272*/ |
| 14593 | /* 28249*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14594 | /* 28251*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 14595 | /* 28253*/ OPC_CheckType, MVT::i64, |
| 14596 | /* 28255*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14597 | /* 28257*/ OPC_EmitMergeInputChains1_0, |
| 14598 | /* 28258*/ OPC_EmitInteger, MVT::i32, 0, |
| 14599 | /* 28261*/ OPC_EmitConvertToTarget, 2, |
| 14600 | /* 28263*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14601 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14602 | // Src: (ld:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 11 |
| 14603 | // Dst: (LOAD16_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14604 | /* 28272*/ /*Scope*/ 23, /*->28296*/ |
| 14605 | /* 28273*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14606 | /* 28275*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 14607 | /* 28277*/ OPC_CheckType, MVT::i64, |
| 14608 | /* 28279*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14609 | /* 28281*/ OPC_EmitMergeInputChains1_0, |
| 14610 | /* 28282*/ OPC_EmitInteger, MVT::i32, 0, |
| 14611 | /* 28285*/ OPC_EmitConvertToTarget, 2, |
| 14612 | /* 28287*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14613 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14614 | // Src: (ld:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 11 |
| 14615 | // Dst: (LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14616 | /* 28296*/ /*Scope*/ 23, /*->28320*/ |
| 14617 | /* 28297*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14618 | /* 28299*/ OPC_CheckPredicate, 6, // Predicate_sextloadi32 |
| 14619 | /* 28301*/ OPC_CheckType, MVT::i64, |
| 14620 | /* 28303*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14621 | /* 28305*/ OPC_EmitMergeInputChains1_0, |
| 14622 | /* 28306*/ OPC_EmitInteger, MVT::i32, 0, |
| 14623 | /* 28309*/ OPC_EmitConvertToTarget, 2, |
| 14624 | /* 28311*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14625 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14626 | // Src: (ld:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi32>> - Complexity = 11 |
| 14627 | // Dst: (LOAD32_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14628 | /* 28320*/ /*Scope*/ 23, /*->28344*/ |
| 14629 | /* 28321*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14630 | /* 28323*/ OPC_CheckPredicate, 6, // Predicate_zextloadi32 |
| 14631 | /* 28325*/ OPC_CheckType, MVT::i64, |
| 14632 | /* 28327*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14633 | /* 28329*/ OPC_EmitMergeInputChains1_0, |
| 14634 | /* 28330*/ OPC_EmitInteger, MVT::i32, 0, |
| 14635 | /* 28333*/ OPC_EmitConvertToTarget, 2, |
| 14636 | /* 28335*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14637 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14638 | // Src: (ld:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi32>> - Complexity = 11 |
| 14639 | // Dst: (LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14640 | /* 28344*/ /*Scope*/ 112, /*->28457*/ |
| 14641 | /* 28345*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 14642 | /* 28347*/ OPC_SwitchType /*2 cases */, 42, MVT::i32,// ->28392 |
| 14643 | /* 28350*/ OPC_Scope, 19, /*->28371*/ // 2 children in Scope |
| 14644 | /* 28352*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 14645 | /* 28354*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14646 | /* 28356*/ OPC_EmitMergeInputChains1_0, |
| 14647 | /* 28357*/ OPC_EmitInteger, MVT::i32, 0, |
| 14648 | /* 28360*/ OPC_EmitConvertToTarget, 2, |
| 14649 | /* 28362*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14650 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14651 | // Src: (ld:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 11 |
| 14652 | // Dst: (LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14653 | /* 28371*/ /*Scope*/ 19, /*->28391*/ |
| 14654 | /* 28372*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 14655 | /* 28374*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14656 | /* 28376*/ OPC_EmitMergeInputChains1_0, |
| 14657 | /* 28377*/ OPC_EmitInteger, MVT::i32, 0, |
| 14658 | /* 28380*/ OPC_EmitConvertToTarget, 2, |
| 14659 | /* 28382*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14660 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14661 | // Src: (ld:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 11 |
| 14662 | // Dst: (LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14663 | /* 28391*/ 0, /*End of Scope*/ |
| 14664 | /* 28392*/ /*SwitchType*/ 62, MVT::i64,// ->28456 |
| 14665 | /* 28394*/ OPC_Scope, 19, /*->28415*/ // 3 children in Scope |
| 14666 | /* 28396*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 14667 | /* 28398*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14668 | /* 28400*/ OPC_EmitMergeInputChains1_0, |
| 14669 | /* 28401*/ OPC_EmitInteger, MVT::i32, 0, |
| 14670 | /* 28404*/ OPC_EmitConvertToTarget, 2, |
| 14671 | /* 28406*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14672 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14673 | // Src: (ld:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 11 |
| 14674 | // Dst: (LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14675 | /* 28415*/ /*Scope*/ 19, /*->28435*/ |
| 14676 | /* 28416*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 14677 | /* 28418*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14678 | /* 28420*/ OPC_EmitMergeInputChains1_0, |
| 14679 | /* 28421*/ OPC_EmitInteger, MVT::i32, 0, |
| 14680 | /* 28424*/ OPC_EmitConvertToTarget, 2, |
| 14681 | /* 28426*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14682 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14683 | // Src: (ld:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 11 |
| 14684 | // Dst: (LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14685 | /* 28435*/ /*Scope*/ 19, /*->28455*/ |
| 14686 | /* 28436*/ OPC_CheckPredicate, 6, // Predicate_extloadi32 |
| 14687 | /* 28438*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14688 | /* 28440*/ OPC_EmitMergeInputChains1_0, |
| 14689 | /* 28441*/ OPC_EmitInteger, MVT::i32, 0, |
| 14690 | /* 28444*/ OPC_EmitConvertToTarget, 2, |
| 14691 | /* 28446*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14692 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14693 | // Src: (ld:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi32>> - Complexity = 11 |
| 14694 | // Dst: (LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14695 | /* 28455*/ 0, /*End of Scope*/ |
| 14696 | /* 28456*/ 0, // EndSwitchType |
| 14697 | /* 28457*/ 0, /*End of Scope*/ |
| 14698 | /* 28458*/ /*SwitchType*/ 17|128,3/*401*/, MVT::i64,// ->28862 |
| 14699 | /* 28461*/ OPC_MoveParent, |
| 14700 | /* 28462*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 14701 | /* 28464*/ OPC_Scope, 42, /*->28508*/ // 12 children in Scope |
| 14702 | /* 28466*/ OPC_CheckPredicate, 11, // Predicate_load |
| 14703 | /* 28468*/ OPC_SwitchType /*2 cases */, 17, MVT::i32,// ->28488 |
| 14704 | /* 28471*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14705 | /* 28473*/ OPC_EmitMergeInputChains1_0, |
| 14706 | /* 28474*/ OPC_EmitInteger, MVT::i32, 0, |
| 14707 | /* 28477*/ OPC_EmitConvertToTarget, 2, |
| 14708 | /* 28479*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14709 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14710 | // Src: (ld:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 14711 | // Dst: (LOAD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14712 | /* 28488*/ /*SwitchType*/ 17, MVT::i64,// ->28507 |
| 14713 | /* 28490*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14714 | /* 28492*/ OPC_EmitMergeInputChains1_0, |
| 14715 | /* 28493*/ OPC_EmitInteger, MVT::i32, 0, |
| 14716 | /* 28496*/ OPC_EmitConvertToTarget, 2, |
| 14717 | /* 28498*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14718 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14719 | // Src: (ld:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 14720 | // Dst: (LOAD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14721 | /* 28507*/ 0, // EndSwitchType |
| 14722 | /* 28508*/ /*Scope*/ 23, /*->28532*/ |
| 14723 | /* 28509*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14724 | /* 28511*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 14725 | /* 28513*/ OPC_CheckType, MVT::i32, |
| 14726 | /* 28515*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14727 | /* 28517*/ OPC_EmitMergeInputChains1_0, |
| 14728 | /* 28518*/ OPC_EmitInteger, MVT::i32, 0, |
| 14729 | /* 28521*/ OPC_EmitConvertToTarget, 2, |
| 14730 | /* 28523*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14731 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14732 | // Src: (ld:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 11 |
| 14733 | // Dst: (LOAD8_S_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14734 | /* 28532*/ /*Scope*/ 23, /*->28556*/ |
| 14735 | /* 28533*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14736 | /* 28535*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 14737 | /* 28537*/ OPC_CheckType, MVT::i32, |
| 14738 | /* 28539*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14739 | /* 28541*/ OPC_EmitMergeInputChains1_0, |
| 14740 | /* 28542*/ OPC_EmitInteger, MVT::i32, 0, |
| 14741 | /* 28545*/ OPC_EmitConvertToTarget, 2, |
| 14742 | /* 28547*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14743 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14744 | // Src: (ld:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 11 |
| 14745 | // Dst: (LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14746 | /* 28556*/ /*Scope*/ 23, /*->28580*/ |
| 14747 | /* 28557*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14748 | /* 28559*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 14749 | /* 28561*/ OPC_CheckType, MVT::i32, |
| 14750 | /* 28563*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14751 | /* 28565*/ OPC_EmitMergeInputChains1_0, |
| 14752 | /* 28566*/ OPC_EmitInteger, MVT::i32, 0, |
| 14753 | /* 28569*/ OPC_EmitConvertToTarget, 2, |
| 14754 | /* 28571*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14755 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14756 | // Src: (ld:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 11 |
| 14757 | // Dst: (LOAD16_S_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14758 | /* 28580*/ /*Scope*/ 23, /*->28604*/ |
| 14759 | /* 28581*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14760 | /* 28583*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 14761 | /* 28585*/ OPC_CheckType, MVT::i32, |
| 14762 | /* 28587*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14763 | /* 28589*/ OPC_EmitMergeInputChains1_0, |
| 14764 | /* 28590*/ OPC_EmitInteger, MVT::i32, 0, |
| 14765 | /* 28593*/ OPC_EmitConvertToTarget, 2, |
| 14766 | /* 28595*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14767 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14768 | // Src: (ld:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 11 |
| 14769 | // Dst: (LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14770 | /* 28604*/ /*Scope*/ 23, /*->28628*/ |
| 14771 | /* 28605*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14772 | /* 28607*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 14773 | /* 28609*/ OPC_CheckType, MVT::i64, |
| 14774 | /* 28611*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14775 | /* 28613*/ OPC_EmitMergeInputChains1_0, |
| 14776 | /* 28614*/ OPC_EmitInteger, MVT::i32, 0, |
| 14777 | /* 28617*/ OPC_EmitConvertToTarget, 2, |
| 14778 | /* 28619*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14779 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14780 | // Src: (ld:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 11 |
| 14781 | // Dst: (LOAD8_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14782 | /* 28628*/ /*Scope*/ 23, /*->28652*/ |
| 14783 | /* 28629*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14784 | /* 28631*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 14785 | /* 28633*/ OPC_CheckType, MVT::i64, |
| 14786 | /* 28635*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14787 | /* 28637*/ OPC_EmitMergeInputChains1_0, |
| 14788 | /* 28638*/ OPC_EmitInteger, MVT::i32, 0, |
| 14789 | /* 28641*/ OPC_EmitConvertToTarget, 2, |
| 14790 | /* 28643*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14791 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14792 | // Src: (ld:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 11 |
| 14793 | // Dst: (LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14794 | /* 28652*/ /*Scope*/ 23, /*->28676*/ |
| 14795 | /* 28653*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14796 | /* 28655*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 14797 | /* 28657*/ OPC_CheckType, MVT::i64, |
| 14798 | /* 28659*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14799 | /* 28661*/ OPC_EmitMergeInputChains1_0, |
| 14800 | /* 28662*/ OPC_EmitInteger, MVT::i32, 0, |
| 14801 | /* 28665*/ OPC_EmitConvertToTarget, 2, |
| 14802 | /* 28667*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14803 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14804 | // Src: (ld:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 11 |
| 14805 | // Dst: (LOAD16_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14806 | /* 28676*/ /*Scope*/ 23, /*->28700*/ |
| 14807 | /* 28677*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14808 | /* 28679*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 14809 | /* 28681*/ OPC_CheckType, MVT::i64, |
| 14810 | /* 28683*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14811 | /* 28685*/ OPC_EmitMergeInputChains1_0, |
| 14812 | /* 28686*/ OPC_EmitInteger, MVT::i32, 0, |
| 14813 | /* 28689*/ OPC_EmitConvertToTarget, 2, |
| 14814 | /* 28691*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14815 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14816 | // Src: (ld:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 11 |
| 14817 | // Dst: (LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14818 | /* 28700*/ /*Scope*/ 23, /*->28724*/ |
| 14819 | /* 28701*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14820 | /* 28703*/ OPC_CheckPredicate, 6, // Predicate_sextloadi32 |
| 14821 | /* 28705*/ OPC_CheckType, MVT::i64, |
| 14822 | /* 28707*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14823 | /* 28709*/ OPC_EmitMergeInputChains1_0, |
| 14824 | /* 28710*/ OPC_EmitInteger, MVT::i32, 0, |
| 14825 | /* 28713*/ OPC_EmitConvertToTarget, 2, |
| 14826 | /* 28715*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14827 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14828 | // Src: (ld:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi32>> - Complexity = 11 |
| 14829 | // Dst: (LOAD32_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14830 | /* 28724*/ /*Scope*/ 23, /*->28748*/ |
| 14831 | /* 28725*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14832 | /* 28727*/ OPC_CheckPredicate, 6, // Predicate_zextloadi32 |
| 14833 | /* 28729*/ OPC_CheckType, MVT::i64, |
| 14834 | /* 28731*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14835 | /* 28733*/ OPC_EmitMergeInputChains1_0, |
| 14836 | /* 28734*/ OPC_EmitInteger, MVT::i32, 0, |
| 14837 | /* 28737*/ OPC_EmitConvertToTarget, 2, |
| 14838 | /* 28739*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14839 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14840 | // Src: (ld:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi32>> - Complexity = 11 |
| 14841 | // Dst: (LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14842 | /* 28748*/ /*Scope*/ 112, /*->28861*/ |
| 14843 | /* 28749*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 14844 | /* 28751*/ OPC_SwitchType /*2 cases */, 42, MVT::i32,// ->28796 |
| 14845 | /* 28754*/ OPC_Scope, 19, /*->28775*/ // 2 children in Scope |
| 14846 | /* 28756*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 14847 | /* 28758*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14848 | /* 28760*/ OPC_EmitMergeInputChains1_0, |
| 14849 | /* 28761*/ OPC_EmitInteger, MVT::i32, 0, |
| 14850 | /* 28764*/ OPC_EmitConvertToTarget, 2, |
| 14851 | /* 28766*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14852 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14853 | // Src: (ld:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 11 |
| 14854 | // Dst: (LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14855 | /* 28775*/ /*Scope*/ 19, /*->28795*/ |
| 14856 | /* 28776*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 14857 | /* 28778*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14858 | /* 28780*/ OPC_EmitMergeInputChains1_0, |
| 14859 | /* 28781*/ OPC_EmitInteger, MVT::i32, 0, |
| 14860 | /* 28784*/ OPC_EmitConvertToTarget, 2, |
| 14861 | /* 28786*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14862 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14863 | // Src: (ld:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 11 |
| 14864 | // Dst: (LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14865 | /* 28795*/ 0, /*End of Scope*/ |
| 14866 | /* 28796*/ /*SwitchType*/ 62, MVT::i64,// ->28860 |
| 14867 | /* 28798*/ OPC_Scope, 19, /*->28819*/ // 3 children in Scope |
| 14868 | /* 28800*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 14869 | /* 28802*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14870 | /* 28804*/ OPC_EmitMergeInputChains1_0, |
| 14871 | /* 28805*/ OPC_EmitInteger, MVT::i32, 0, |
| 14872 | /* 28808*/ OPC_EmitConvertToTarget, 2, |
| 14873 | /* 28810*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14874 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14875 | // Src: (ld:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 11 |
| 14876 | // Dst: (LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14877 | /* 28819*/ /*Scope*/ 19, /*->28839*/ |
| 14878 | /* 28820*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 14879 | /* 28822*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14880 | /* 28824*/ OPC_EmitMergeInputChains1_0, |
| 14881 | /* 28825*/ OPC_EmitInteger, MVT::i32, 0, |
| 14882 | /* 28828*/ OPC_EmitConvertToTarget, 2, |
| 14883 | /* 28830*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14884 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14885 | // Src: (ld:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 11 |
| 14886 | // Dst: (LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14887 | /* 28839*/ /*Scope*/ 19, /*->28859*/ |
| 14888 | /* 28840*/ OPC_CheckPredicate, 6, // Predicate_extloadi32 |
| 14889 | /* 28842*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 14890 | /* 28844*/ OPC_EmitMergeInputChains1_0, |
| 14891 | /* 28845*/ OPC_EmitInteger, MVT::i32, 0, |
| 14892 | /* 28848*/ OPC_EmitConvertToTarget, 2, |
| 14893 | /* 28850*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 14894 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14895 | // Src: (ld:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi32>> - Complexity = 11 |
| 14896 | // Dst: (LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 14897 | /* 28859*/ 0, /*End of Scope*/ |
| 14898 | /* 28860*/ 0, // EndSwitchType |
| 14899 | /* 28861*/ 0, /*End of Scope*/ |
| 14900 | /* 28862*/ 0, // EndSwitchType |
| 14901 | /* 28863*/ /*SwitchOpcode*/ 51|128,6/*819*/, TARGET_VAL(ISD::OR),// ->29686 |
| 14902 | /* 28867*/ OPC_RecordChild0, // #1 = $addr |
| 14903 | /* 28868*/ OPC_RecordChild1, // #2 = $off |
| 14904 | /* 28869*/ OPC_MoveChild1, |
| 14905 | /* 28870*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 14906 | /* 28873*/ OPC_MoveParent, |
| 14907 | /* 28874*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 14908 | /* 28876*/ OPC_SwitchType /*2 cases */, 17|128,3/*401*/, MVT::i32,// ->29281 |
| 14909 | /* 28880*/ OPC_MoveParent, |
| 14910 | /* 28881*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 14911 | /* 28883*/ OPC_Scope, 42, /*->28927*/ // 12 children in Scope |
| 14912 | /* 28885*/ OPC_CheckPredicate, 11, // Predicate_load |
| 14913 | /* 28887*/ OPC_SwitchType /*2 cases */, 17, MVT::i32,// ->28907 |
| 14914 | /* 28890*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14915 | /* 28892*/ OPC_EmitMergeInputChains1_0, |
| 14916 | /* 28893*/ OPC_EmitInteger, MVT::i32, 0, |
| 14917 | /* 28896*/ OPC_EmitConvertToTarget, 2, |
| 14918 | /* 28898*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14919 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14920 | // Src: (ld:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 14921 | // Dst: (LOAD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14922 | /* 28907*/ /*SwitchType*/ 17, MVT::i64,// ->28926 |
| 14923 | /* 28909*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14924 | /* 28911*/ OPC_EmitMergeInputChains1_0, |
| 14925 | /* 28912*/ OPC_EmitInteger, MVT::i32, 0, |
| 14926 | /* 28915*/ OPC_EmitConvertToTarget, 2, |
| 14927 | /* 28917*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14928 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14929 | // Src: (ld:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 14930 | // Dst: (LOAD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14931 | /* 28926*/ 0, // EndSwitchType |
| 14932 | /* 28927*/ /*Scope*/ 23, /*->28951*/ |
| 14933 | /* 28928*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14934 | /* 28930*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 14935 | /* 28932*/ OPC_CheckType, MVT::i32, |
| 14936 | /* 28934*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14937 | /* 28936*/ OPC_EmitMergeInputChains1_0, |
| 14938 | /* 28937*/ OPC_EmitInteger, MVT::i32, 0, |
| 14939 | /* 28940*/ OPC_EmitConvertToTarget, 2, |
| 14940 | /* 28942*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14941 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14942 | // Src: (ld:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 11 |
| 14943 | // Dst: (LOAD8_S_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14944 | /* 28951*/ /*Scope*/ 23, /*->28975*/ |
| 14945 | /* 28952*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14946 | /* 28954*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 14947 | /* 28956*/ OPC_CheckType, MVT::i32, |
| 14948 | /* 28958*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14949 | /* 28960*/ OPC_EmitMergeInputChains1_0, |
| 14950 | /* 28961*/ OPC_EmitInteger, MVT::i32, 0, |
| 14951 | /* 28964*/ OPC_EmitConvertToTarget, 2, |
| 14952 | /* 28966*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14953 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14954 | // Src: (ld:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 11 |
| 14955 | // Dst: (LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14956 | /* 28975*/ /*Scope*/ 23, /*->28999*/ |
| 14957 | /* 28976*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14958 | /* 28978*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 14959 | /* 28980*/ OPC_CheckType, MVT::i32, |
| 14960 | /* 28982*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14961 | /* 28984*/ OPC_EmitMergeInputChains1_0, |
| 14962 | /* 28985*/ OPC_EmitInteger, MVT::i32, 0, |
| 14963 | /* 28988*/ OPC_EmitConvertToTarget, 2, |
| 14964 | /* 28990*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14965 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14966 | // Src: (ld:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 11 |
| 14967 | // Dst: (LOAD16_S_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14968 | /* 28999*/ /*Scope*/ 23, /*->29023*/ |
| 14969 | /* 29000*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14970 | /* 29002*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 14971 | /* 29004*/ OPC_CheckType, MVT::i32, |
| 14972 | /* 29006*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14973 | /* 29008*/ OPC_EmitMergeInputChains1_0, |
| 14974 | /* 29009*/ OPC_EmitInteger, MVT::i32, 0, |
| 14975 | /* 29012*/ OPC_EmitConvertToTarget, 2, |
| 14976 | /* 29014*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14977 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 14978 | // Src: (ld:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 11 |
| 14979 | // Dst: (LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14980 | /* 29023*/ /*Scope*/ 23, /*->29047*/ |
| 14981 | /* 29024*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 14982 | /* 29026*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 14983 | /* 29028*/ OPC_CheckType, MVT::i64, |
| 14984 | /* 29030*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14985 | /* 29032*/ OPC_EmitMergeInputChains1_0, |
| 14986 | /* 29033*/ OPC_EmitInteger, MVT::i32, 0, |
| 14987 | /* 29036*/ OPC_EmitConvertToTarget, 2, |
| 14988 | /* 29038*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 14989 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 14990 | // Src: (ld:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 11 |
| 14991 | // Dst: (LOAD8_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 14992 | /* 29047*/ /*Scope*/ 23, /*->29071*/ |
| 14993 | /* 29048*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 14994 | /* 29050*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 14995 | /* 29052*/ OPC_CheckType, MVT::i64, |
| 14996 | /* 29054*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 14997 | /* 29056*/ OPC_EmitMergeInputChains1_0, |
| 14998 | /* 29057*/ OPC_EmitInteger, MVT::i32, 0, |
| 14999 | /* 29060*/ OPC_EmitConvertToTarget, 2, |
| 15000 | /* 29062*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15001 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15002 | // Src: (ld:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 11 |
| 15003 | // Dst: (LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 15004 | /* 29071*/ /*Scope*/ 23, /*->29095*/ |
| 15005 | /* 29072*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15006 | /* 29074*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 15007 | /* 29076*/ OPC_CheckType, MVT::i64, |
| 15008 | /* 29078*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15009 | /* 29080*/ OPC_EmitMergeInputChains1_0, |
| 15010 | /* 29081*/ OPC_EmitInteger, MVT::i32, 0, |
| 15011 | /* 29084*/ OPC_EmitConvertToTarget, 2, |
| 15012 | /* 29086*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15013 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15014 | // Src: (ld:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 11 |
| 15015 | // Dst: (LOAD16_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 15016 | /* 29095*/ /*Scope*/ 23, /*->29119*/ |
| 15017 | /* 29096*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15018 | /* 29098*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 15019 | /* 29100*/ OPC_CheckType, MVT::i64, |
| 15020 | /* 29102*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15021 | /* 29104*/ OPC_EmitMergeInputChains1_0, |
| 15022 | /* 29105*/ OPC_EmitInteger, MVT::i32, 0, |
| 15023 | /* 29108*/ OPC_EmitConvertToTarget, 2, |
| 15024 | /* 29110*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15025 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15026 | // Src: (ld:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 11 |
| 15027 | // Dst: (LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 15028 | /* 29119*/ /*Scope*/ 23, /*->29143*/ |
| 15029 | /* 29120*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15030 | /* 29122*/ OPC_CheckPredicate, 6, // Predicate_sextloadi32 |
| 15031 | /* 29124*/ OPC_CheckType, MVT::i64, |
| 15032 | /* 29126*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15033 | /* 29128*/ OPC_EmitMergeInputChains1_0, |
| 15034 | /* 29129*/ OPC_EmitInteger, MVT::i32, 0, |
| 15035 | /* 29132*/ OPC_EmitConvertToTarget, 2, |
| 15036 | /* 29134*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15037 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15038 | // Src: (ld:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi32>> - Complexity = 11 |
| 15039 | // Dst: (LOAD32_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 15040 | /* 29143*/ /*Scope*/ 23, /*->29167*/ |
| 15041 | /* 29144*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15042 | /* 29146*/ OPC_CheckPredicate, 6, // Predicate_zextloadi32 |
| 15043 | /* 29148*/ OPC_CheckType, MVT::i64, |
| 15044 | /* 29150*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15045 | /* 29152*/ OPC_EmitMergeInputChains1_0, |
| 15046 | /* 29153*/ OPC_EmitInteger, MVT::i32, 0, |
| 15047 | /* 29156*/ OPC_EmitConvertToTarget, 2, |
| 15048 | /* 29158*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15049 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15050 | // Src: (ld:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi32>> - Complexity = 11 |
| 15051 | // Dst: (LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 15052 | /* 29167*/ /*Scope*/ 112, /*->29280*/ |
| 15053 | /* 29168*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 15054 | /* 29170*/ OPC_SwitchType /*2 cases */, 42, MVT::i32,// ->29215 |
| 15055 | /* 29173*/ OPC_Scope, 19, /*->29194*/ // 2 children in Scope |
| 15056 | /* 29175*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 15057 | /* 29177*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15058 | /* 29179*/ OPC_EmitMergeInputChains1_0, |
| 15059 | /* 29180*/ OPC_EmitInteger, MVT::i32, 0, |
| 15060 | /* 29183*/ OPC_EmitConvertToTarget, 2, |
| 15061 | /* 29185*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15062 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 15063 | // Src: (ld:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 11 |
| 15064 | // Dst: (LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 15065 | /* 29194*/ /*Scope*/ 19, /*->29214*/ |
| 15066 | /* 29195*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 15067 | /* 29197*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15068 | /* 29199*/ OPC_EmitMergeInputChains1_0, |
| 15069 | /* 29200*/ OPC_EmitInteger, MVT::i32, 0, |
| 15070 | /* 29203*/ OPC_EmitConvertToTarget, 2, |
| 15071 | /* 29205*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15072 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 15073 | // Src: (ld:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 11 |
| 15074 | // Dst: (LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 15075 | /* 29214*/ 0, /*End of Scope*/ |
| 15076 | /* 29215*/ /*SwitchType*/ 62, MVT::i64,// ->29279 |
| 15077 | /* 29217*/ OPC_Scope, 19, /*->29238*/ // 3 children in Scope |
| 15078 | /* 29219*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 15079 | /* 29221*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15080 | /* 29223*/ OPC_EmitMergeInputChains1_0, |
| 15081 | /* 29224*/ OPC_EmitInteger, MVT::i32, 0, |
| 15082 | /* 29227*/ OPC_EmitConvertToTarget, 2, |
| 15083 | /* 29229*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15084 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15085 | // Src: (ld:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 11 |
| 15086 | // Dst: (LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 15087 | /* 29238*/ /*Scope*/ 19, /*->29258*/ |
| 15088 | /* 29239*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 15089 | /* 29241*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15090 | /* 29243*/ OPC_EmitMergeInputChains1_0, |
| 15091 | /* 29244*/ OPC_EmitInteger, MVT::i32, 0, |
| 15092 | /* 29247*/ OPC_EmitConvertToTarget, 2, |
| 15093 | /* 29249*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15094 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15095 | // Src: (ld:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 11 |
| 15096 | // Dst: (LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 15097 | /* 29258*/ /*Scope*/ 19, /*->29278*/ |
| 15098 | /* 29259*/ OPC_CheckPredicate, 6, // Predicate_extloadi32 |
| 15099 | /* 29261*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15100 | /* 29263*/ OPC_EmitMergeInputChains1_0, |
| 15101 | /* 29264*/ OPC_EmitInteger, MVT::i32, 0, |
| 15102 | /* 29267*/ OPC_EmitConvertToTarget, 2, |
| 15103 | /* 29269*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15104 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15105 | // Src: (ld:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi32>> - Complexity = 11 |
| 15106 | // Dst: (LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 15107 | /* 29278*/ 0, /*End of Scope*/ |
| 15108 | /* 29279*/ 0, // EndSwitchType |
| 15109 | /* 29280*/ 0, /*End of Scope*/ |
| 15110 | /* 29281*/ /*SwitchType*/ 17|128,3/*401*/, MVT::i64,// ->29685 |
| 15111 | /* 29284*/ OPC_MoveParent, |
| 15112 | /* 29285*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 15113 | /* 29287*/ OPC_Scope, 42, /*->29331*/ // 12 children in Scope |
| 15114 | /* 29289*/ OPC_CheckPredicate, 11, // Predicate_load |
| 15115 | /* 29291*/ OPC_SwitchType /*2 cases */, 17, MVT::i32,// ->29311 |
| 15116 | /* 29294*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15117 | /* 29296*/ OPC_EmitMergeInputChains1_0, |
| 15118 | /* 29297*/ OPC_EmitInteger, MVT::i32, 0, |
| 15119 | /* 29300*/ OPC_EmitConvertToTarget, 2, |
| 15120 | /* 29302*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15121 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 15122 | // Src: (ld:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 15123 | // Dst: (LOAD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15124 | /* 29311*/ /*SwitchType*/ 17, MVT::i64,// ->29330 |
| 15125 | /* 29313*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15126 | /* 29315*/ OPC_EmitMergeInputChains1_0, |
| 15127 | /* 29316*/ OPC_EmitInteger, MVT::i32, 0, |
| 15128 | /* 29319*/ OPC_EmitConvertToTarget, 2, |
| 15129 | /* 29321*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15130 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15131 | // Src: (ld:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 15132 | // Dst: (LOAD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15133 | /* 29330*/ 0, // EndSwitchType |
| 15134 | /* 29331*/ /*Scope*/ 23, /*->29355*/ |
| 15135 | /* 29332*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15136 | /* 29334*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 15137 | /* 29336*/ OPC_CheckType, MVT::i32, |
| 15138 | /* 29338*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15139 | /* 29340*/ OPC_EmitMergeInputChains1_0, |
| 15140 | /* 29341*/ OPC_EmitInteger, MVT::i32, 0, |
| 15141 | /* 29344*/ OPC_EmitConvertToTarget, 2, |
| 15142 | /* 29346*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15143 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 15144 | // Src: (ld:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 11 |
| 15145 | // Dst: (LOAD8_S_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15146 | /* 29355*/ /*Scope*/ 23, /*->29379*/ |
| 15147 | /* 29356*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15148 | /* 29358*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 15149 | /* 29360*/ OPC_CheckType, MVT::i32, |
| 15150 | /* 29362*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15151 | /* 29364*/ OPC_EmitMergeInputChains1_0, |
| 15152 | /* 29365*/ OPC_EmitInteger, MVT::i32, 0, |
| 15153 | /* 29368*/ OPC_EmitConvertToTarget, 2, |
| 15154 | /* 29370*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15155 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 15156 | // Src: (ld:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 11 |
| 15157 | // Dst: (LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15158 | /* 29379*/ /*Scope*/ 23, /*->29403*/ |
| 15159 | /* 29380*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15160 | /* 29382*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 15161 | /* 29384*/ OPC_CheckType, MVT::i32, |
| 15162 | /* 29386*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15163 | /* 29388*/ OPC_EmitMergeInputChains1_0, |
| 15164 | /* 29389*/ OPC_EmitInteger, MVT::i32, 0, |
| 15165 | /* 29392*/ OPC_EmitConvertToTarget, 2, |
| 15166 | /* 29394*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15167 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 15168 | // Src: (ld:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 11 |
| 15169 | // Dst: (LOAD16_S_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15170 | /* 29403*/ /*Scope*/ 23, /*->29427*/ |
| 15171 | /* 29404*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15172 | /* 29406*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 15173 | /* 29408*/ OPC_CheckType, MVT::i32, |
| 15174 | /* 29410*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15175 | /* 29412*/ OPC_EmitMergeInputChains1_0, |
| 15176 | /* 29413*/ OPC_EmitInteger, MVT::i32, 0, |
| 15177 | /* 29416*/ OPC_EmitConvertToTarget, 2, |
| 15178 | /* 29418*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15179 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 15180 | // Src: (ld:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 11 |
| 15181 | // Dst: (LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15182 | /* 29427*/ /*Scope*/ 23, /*->29451*/ |
| 15183 | /* 29428*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15184 | /* 29430*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 15185 | /* 29432*/ OPC_CheckType, MVT::i64, |
| 15186 | /* 29434*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15187 | /* 29436*/ OPC_EmitMergeInputChains1_0, |
| 15188 | /* 29437*/ OPC_EmitInteger, MVT::i32, 0, |
| 15189 | /* 29440*/ OPC_EmitConvertToTarget, 2, |
| 15190 | /* 29442*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15191 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15192 | // Src: (ld:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 11 |
| 15193 | // Dst: (LOAD8_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15194 | /* 29451*/ /*Scope*/ 23, /*->29475*/ |
| 15195 | /* 29452*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15196 | /* 29454*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 15197 | /* 29456*/ OPC_CheckType, MVT::i64, |
| 15198 | /* 29458*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15199 | /* 29460*/ OPC_EmitMergeInputChains1_0, |
| 15200 | /* 29461*/ OPC_EmitInteger, MVT::i32, 0, |
| 15201 | /* 29464*/ OPC_EmitConvertToTarget, 2, |
| 15202 | /* 29466*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15203 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15204 | // Src: (ld:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 11 |
| 15205 | // Dst: (LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15206 | /* 29475*/ /*Scope*/ 23, /*->29499*/ |
| 15207 | /* 29476*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15208 | /* 29478*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 15209 | /* 29480*/ OPC_CheckType, MVT::i64, |
| 15210 | /* 29482*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15211 | /* 29484*/ OPC_EmitMergeInputChains1_0, |
| 15212 | /* 29485*/ OPC_EmitInteger, MVT::i32, 0, |
| 15213 | /* 29488*/ OPC_EmitConvertToTarget, 2, |
| 15214 | /* 29490*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15215 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15216 | // Src: (ld:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 11 |
| 15217 | // Dst: (LOAD16_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15218 | /* 29499*/ /*Scope*/ 23, /*->29523*/ |
| 15219 | /* 29500*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15220 | /* 29502*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 15221 | /* 29504*/ OPC_CheckType, MVT::i64, |
| 15222 | /* 29506*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15223 | /* 29508*/ OPC_EmitMergeInputChains1_0, |
| 15224 | /* 29509*/ OPC_EmitInteger, MVT::i32, 0, |
| 15225 | /* 29512*/ OPC_EmitConvertToTarget, 2, |
| 15226 | /* 29514*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15227 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15228 | // Src: (ld:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 11 |
| 15229 | // Dst: (LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15230 | /* 29523*/ /*Scope*/ 23, /*->29547*/ |
| 15231 | /* 29524*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15232 | /* 29526*/ OPC_CheckPredicate, 6, // Predicate_sextloadi32 |
| 15233 | /* 29528*/ OPC_CheckType, MVT::i64, |
| 15234 | /* 29530*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15235 | /* 29532*/ OPC_EmitMergeInputChains1_0, |
| 15236 | /* 29533*/ OPC_EmitInteger, MVT::i32, 0, |
| 15237 | /* 29536*/ OPC_EmitConvertToTarget, 2, |
| 15238 | /* 29538*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15239 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15240 | // Src: (ld:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi32>> - Complexity = 11 |
| 15241 | // Dst: (LOAD32_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15242 | /* 29547*/ /*Scope*/ 23, /*->29571*/ |
| 15243 | /* 29548*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15244 | /* 29550*/ OPC_CheckPredicate, 6, // Predicate_zextloadi32 |
| 15245 | /* 29552*/ OPC_CheckType, MVT::i64, |
| 15246 | /* 29554*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15247 | /* 29556*/ OPC_EmitMergeInputChains1_0, |
| 15248 | /* 29557*/ OPC_EmitInteger, MVT::i32, 0, |
| 15249 | /* 29560*/ OPC_EmitConvertToTarget, 2, |
| 15250 | /* 29562*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15251 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15252 | // Src: (ld:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi32>> - Complexity = 11 |
| 15253 | // Dst: (LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15254 | /* 29571*/ /*Scope*/ 112, /*->29684*/ |
| 15255 | /* 29572*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 15256 | /* 29574*/ OPC_SwitchType /*2 cases */, 42, MVT::i32,// ->29619 |
| 15257 | /* 29577*/ OPC_Scope, 19, /*->29598*/ // 2 children in Scope |
| 15258 | /* 29579*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 15259 | /* 29581*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15260 | /* 29583*/ OPC_EmitMergeInputChains1_0, |
| 15261 | /* 29584*/ OPC_EmitInteger, MVT::i32, 0, |
| 15262 | /* 29587*/ OPC_EmitConvertToTarget, 2, |
| 15263 | /* 29589*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15264 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 15265 | // Src: (ld:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 11 |
| 15266 | // Dst: (LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15267 | /* 29598*/ /*Scope*/ 19, /*->29618*/ |
| 15268 | /* 29599*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 15269 | /* 29601*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15270 | /* 29603*/ OPC_EmitMergeInputChains1_0, |
| 15271 | /* 29604*/ OPC_EmitInteger, MVT::i32, 0, |
| 15272 | /* 29607*/ OPC_EmitConvertToTarget, 2, |
| 15273 | /* 29609*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15274 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 15275 | // Src: (ld:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 11 |
| 15276 | // Dst: (LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15277 | /* 29618*/ 0, /*End of Scope*/ |
| 15278 | /* 29619*/ /*SwitchType*/ 62, MVT::i64,// ->29683 |
| 15279 | /* 29621*/ OPC_Scope, 19, /*->29642*/ // 3 children in Scope |
| 15280 | /* 29623*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 15281 | /* 29625*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15282 | /* 29627*/ OPC_EmitMergeInputChains1_0, |
| 15283 | /* 29628*/ OPC_EmitInteger, MVT::i32, 0, |
| 15284 | /* 29631*/ OPC_EmitConvertToTarget, 2, |
| 15285 | /* 29633*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15286 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15287 | // Src: (ld:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 11 |
| 15288 | // Dst: (LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15289 | /* 29642*/ /*Scope*/ 19, /*->29662*/ |
| 15290 | /* 29643*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 15291 | /* 29645*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15292 | /* 29647*/ OPC_EmitMergeInputChains1_0, |
| 15293 | /* 29648*/ OPC_EmitInteger, MVT::i32, 0, |
| 15294 | /* 29651*/ OPC_EmitConvertToTarget, 2, |
| 15295 | /* 29653*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15296 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15297 | // Src: (ld:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 11 |
| 15298 | // Dst: (LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15299 | /* 29662*/ /*Scope*/ 19, /*->29682*/ |
| 15300 | /* 29663*/ OPC_CheckPredicate, 6, // Predicate_extloadi32 |
| 15301 | /* 29665*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15302 | /* 29667*/ OPC_EmitMergeInputChains1_0, |
| 15303 | /* 29668*/ OPC_EmitInteger, MVT::i32, 0, |
| 15304 | /* 29671*/ OPC_EmitConvertToTarget, 2, |
| 15305 | /* 29673*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15306 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 15307 | // Src: (ld:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi32>> - Complexity = 11 |
| 15308 | // Dst: (LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 15309 | /* 29682*/ 0, /*End of Scope*/ |
| 15310 | /* 29683*/ 0, // EndSwitchType |
| 15311 | /* 29684*/ 0, /*End of Scope*/ |
| 15312 | /* 29685*/ 0, // EndSwitchType |
| 15313 | /* 29686*/ /*SwitchOpcode*/ 14|128,8/*1038*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->30728 |
| 15314 | /* 29690*/ OPC_RecordChild0, // #1 = $off |
| 15315 | /* 29691*/ OPC_MoveChild0, |
| 15316 | /* 29692*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 15317 | /* 29695*/ OPC_MoveParent, |
| 15318 | /* 29696*/ OPC_MoveParent, |
| 15319 | /* 29697*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 15320 | /* 29699*/ OPC_Scope, 116, /*->29817*/ // 12 children in Scope |
| 15321 | /* 29701*/ OPC_CheckPredicate, 11, // Predicate_load |
| 15322 | /* 29703*/ OPC_SwitchType /*2 cases */, 54, MVT::i32,// ->29760 |
| 15323 | /* 29706*/ OPC_Scope, 25, /*->29733*/ // 2 children in Scope |
| 15324 | /* 29708*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15325 | /* 29710*/ OPC_EmitMergeInputChains1_0, |
| 15326 | /* 29711*/ OPC_EmitInteger, MVT::i32, 0, |
| 15327 | /* 29714*/ OPC_EmitInteger, MVT::i32, 0, |
| 15328 | /* 29717*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15329 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15330 | /* 29724*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15331 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15332 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 15333 | // Dst: (LOAD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15334 | /* 29733*/ /*Scope*/ 25, /*->29759*/ |
| 15335 | /* 29734*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15336 | /* 29736*/ OPC_EmitMergeInputChains1_0, |
| 15337 | /* 29737*/ OPC_EmitInteger, MVT::i32, 0, |
| 15338 | /* 29740*/ OPC_EmitInteger, MVT::i64, 0, |
| 15339 | /* 29743*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15340 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15341 | /* 29750*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15342 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15343 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 15344 | // Dst: (LOAD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15345 | /* 29759*/ 0, /*End of Scope*/ |
| 15346 | /* 29760*/ /*SwitchType*/ 54, MVT::i64,// ->29816 |
| 15347 | /* 29762*/ OPC_Scope, 25, /*->29789*/ // 2 children in Scope |
| 15348 | /* 29764*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15349 | /* 29766*/ OPC_EmitMergeInputChains1_0, |
| 15350 | /* 29767*/ OPC_EmitInteger, MVT::i32, 0, |
| 15351 | /* 29770*/ OPC_EmitInteger, MVT::i32, 0, |
| 15352 | /* 29773*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15353 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15354 | /* 29780*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15355 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15356 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 15357 | // Dst: (LOAD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15358 | /* 29789*/ /*Scope*/ 25, /*->29815*/ |
| 15359 | /* 29790*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15360 | /* 29792*/ OPC_EmitMergeInputChains1_0, |
| 15361 | /* 29793*/ OPC_EmitInteger, MVT::i32, 0, |
| 15362 | /* 29796*/ OPC_EmitInteger, MVT::i64, 0, |
| 15363 | /* 29799*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15364 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15365 | /* 29806*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15366 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15367 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 15368 | // Dst: (LOAD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15369 | /* 29815*/ 0, /*End of Scope*/ |
| 15370 | /* 29816*/ 0, // EndSwitchType |
| 15371 | /* 29817*/ /*Scope*/ 60, /*->29878*/ |
| 15372 | /* 29818*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15373 | /* 29820*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 15374 | /* 29822*/ OPC_CheckType, MVT::i32, |
| 15375 | /* 29824*/ OPC_Scope, 25, /*->29851*/ // 2 children in Scope |
| 15376 | /* 29826*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15377 | /* 29828*/ OPC_EmitMergeInputChains1_0, |
| 15378 | /* 29829*/ OPC_EmitInteger, MVT::i32, 0, |
| 15379 | /* 29832*/ OPC_EmitInteger, MVT::i32, 0, |
| 15380 | /* 29835*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15381 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15382 | /* 29842*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15383 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15384 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 10 |
| 15385 | // Dst: (LOAD8_S_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15386 | /* 29851*/ /*Scope*/ 25, /*->29877*/ |
| 15387 | /* 29852*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15388 | /* 29854*/ OPC_EmitMergeInputChains1_0, |
| 15389 | /* 29855*/ OPC_EmitInteger, MVT::i32, 0, |
| 15390 | /* 29858*/ OPC_EmitInteger, MVT::i64, 0, |
| 15391 | /* 29861*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15392 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15393 | /* 29868*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15394 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15395 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 10 |
| 15396 | // Dst: (LOAD8_S_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15397 | /* 29877*/ 0, /*End of Scope*/ |
| 15398 | /* 29878*/ /*Scope*/ 60, /*->29939*/ |
| 15399 | /* 29879*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15400 | /* 29881*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 15401 | /* 29883*/ OPC_CheckType, MVT::i32, |
| 15402 | /* 29885*/ OPC_Scope, 25, /*->29912*/ // 2 children in Scope |
| 15403 | /* 29887*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15404 | /* 29889*/ OPC_EmitMergeInputChains1_0, |
| 15405 | /* 29890*/ OPC_EmitInteger, MVT::i32, 0, |
| 15406 | /* 29893*/ OPC_EmitInteger, MVT::i32, 0, |
| 15407 | /* 29896*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15408 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15409 | /* 29903*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15410 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15411 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 10 |
| 15412 | // Dst: (LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15413 | /* 29912*/ /*Scope*/ 25, /*->29938*/ |
| 15414 | /* 29913*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15415 | /* 29915*/ OPC_EmitMergeInputChains1_0, |
| 15416 | /* 29916*/ OPC_EmitInteger, MVT::i32, 0, |
| 15417 | /* 29919*/ OPC_EmitInteger, MVT::i64, 0, |
| 15418 | /* 29922*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15419 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15420 | /* 29929*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15421 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15422 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 10 |
| 15423 | // Dst: (LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15424 | /* 29938*/ 0, /*End of Scope*/ |
| 15425 | /* 29939*/ /*Scope*/ 60, /*->30000*/ |
| 15426 | /* 29940*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15427 | /* 29942*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 15428 | /* 29944*/ OPC_CheckType, MVT::i32, |
| 15429 | /* 29946*/ OPC_Scope, 25, /*->29973*/ // 2 children in Scope |
| 15430 | /* 29948*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15431 | /* 29950*/ OPC_EmitMergeInputChains1_0, |
| 15432 | /* 29951*/ OPC_EmitInteger, MVT::i32, 0, |
| 15433 | /* 29954*/ OPC_EmitInteger, MVT::i32, 0, |
| 15434 | /* 29957*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15435 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15436 | /* 29964*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15437 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15438 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 10 |
| 15439 | // Dst: (LOAD16_S_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15440 | /* 29973*/ /*Scope*/ 25, /*->29999*/ |
| 15441 | /* 29974*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15442 | /* 29976*/ OPC_EmitMergeInputChains1_0, |
| 15443 | /* 29977*/ OPC_EmitInteger, MVT::i32, 0, |
| 15444 | /* 29980*/ OPC_EmitInteger, MVT::i64, 0, |
| 15445 | /* 29983*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15446 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15447 | /* 29990*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15448 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15449 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 10 |
| 15450 | // Dst: (LOAD16_S_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15451 | /* 29999*/ 0, /*End of Scope*/ |
| 15452 | /* 30000*/ /*Scope*/ 60, /*->30061*/ |
| 15453 | /* 30001*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15454 | /* 30003*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 15455 | /* 30005*/ OPC_CheckType, MVT::i32, |
| 15456 | /* 30007*/ OPC_Scope, 25, /*->30034*/ // 2 children in Scope |
| 15457 | /* 30009*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15458 | /* 30011*/ OPC_EmitMergeInputChains1_0, |
| 15459 | /* 30012*/ OPC_EmitInteger, MVT::i32, 0, |
| 15460 | /* 30015*/ OPC_EmitInteger, MVT::i32, 0, |
| 15461 | /* 30018*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15462 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15463 | /* 30025*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15464 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15465 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 10 |
| 15466 | // Dst: (LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15467 | /* 30034*/ /*Scope*/ 25, /*->30060*/ |
| 15468 | /* 30035*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15469 | /* 30037*/ OPC_EmitMergeInputChains1_0, |
| 15470 | /* 30038*/ OPC_EmitInteger, MVT::i32, 0, |
| 15471 | /* 30041*/ OPC_EmitInteger, MVT::i64, 0, |
| 15472 | /* 30044*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15473 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15474 | /* 30051*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15475 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15476 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 10 |
| 15477 | // Dst: (LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15478 | /* 30060*/ 0, /*End of Scope*/ |
| 15479 | /* 30061*/ /*Scope*/ 60, /*->30122*/ |
| 15480 | /* 30062*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15481 | /* 30064*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 15482 | /* 30066*/ OPC_CheckType, MVT::i64, |
| 15483 | /* 30068*/ OPC_Scope, 25, /*->30095*/ // 2 children in Scope |
| 15484 | /* 30070*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15485 | /* 30072*/ OPC_EmitMergeInputChains1_0, |
| 15486 | /* 30073*/ OPC_EmitInteger, MVT::i32, 0, |
| 15487 | /* 30076*/ OPC_EmitInteger, MVT::i32, 0, |
| 15488 | /* 30079*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15489 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15490 | /* 30086*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15491 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15492 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 10 |
| 15493 | // Dst: (LOAD8_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15494 | /* 30095*/ /*Scope*/ 25, /*->30121*/ |
| 15495 | /* 30096*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15496 | /* 30098*/ OPC_EmitMergeInputChains1_0, |
| 15497 | /* 30099*/ OPC_EmitInteger, MVT::i32, 0, |
| 15498 | /* 30102*/ OPC_EmitInteger, MVT::i64, 0, |
| 15499 | /* 30105*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15500 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15501 | /* 30112*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15502 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15503 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 10 |
| 15504 | // Dst: (LOAD8_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15505 | /* 30121*/ 0, /*End of Scope*/ |
| 15506 | /* 30122*/ /*Scope*/ 60, /*->30183*/ |
| 15507 | /* 30123*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15508 | /* 30125*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 15509 | /* 30127*/ OPC_CheckType, MVT::i64, |
| 15510 | /* 30129*/ OPC_Scope, 25, /*->30156*/ // 2 children in Scope |
| 15511 | /* 30131*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15512 | /* 30133*/ OPC_EmitMergeInputChains1_0, |
| 15513 | /* 30134*/ OPC_EmitInteger, MVT::i32, 0, |
| 15514 | /* 30137*/ OPC_EmitInteger, MVT::i32, 0, |
| 15515 | /* 30140*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15516 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15517 | /* 30147*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15518 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15519 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 10 |
| 15520 | // Dst: (LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15521 | /* 30156*/ /*Scope*/ 25, /*->30182*/ |
| 15522 | /* 30157*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15523 | /* 30159*/ OPC_EmitMergeInputChains1_0, |
| 15524 | /* 30160*/ OPC_EmitInteger, MVT::i32, 0, |
| 15525 | /* 30163*/ OPC_EmitInteger, MVT::i64, 0, |
| 15526 | /* 30166*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15527 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15528 | /* 30173*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15529 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15530 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 10 |
| 15531 | // Dst: (LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15532 | /* 30182*/ 0, /*End of Scope*/ |
| 15533 | /* 30183*/ /*Scope*/ 60, /*->30244*/ |
| 15534 | /* 30184*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15535 | /* 30186*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 15536 | /* 30188*/ OPC_CheckType, MVT::i64, |
| 15537 | /* 30190*/ OPC_Scope, 25, /*->30217*/ // 2 children in Scope |
| 15538 | /* 30192*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15539 | /* 30194*/ OPC_EmitMergeInputChains1_0, |
| 15540 | /* 30195*/ OPC_EmitInteger, MVT::i32, 0, |
| 15541 | /* 30198*/ OPC_EmitInteger, MVT::i32, 0, |
| 15542 | /* 30201*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15543 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15544 | /* 30208*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15545 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15546 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 10 |
| 15547 | // Dst: (LOAD16_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15548 | /* 30217*/ /*Scope*/ 25, /*->30243*/ |
| 15549 | /* 30218*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15550 | /* 30220*/ OPC_EmitMergeInputChains1_0, |
| 15551 | /* 30221*/ OPC_EmitInteger, MVT::i32, 0, |
| 15552 | /* 30224*/ OPC_EmitInteger, MVT::i64, 0, |
| 15553 | /* 30227*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15554 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15555 | /* 30234*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15556 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15557 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 10 |
| 15558 | // Dst: (LOAD16_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15559 | /* 30243*/ 0, /*End of Scope*/ |
| 15560 | /* 30244*/ /*Scope*/ 60, /*->30305*/ |
| 15561 | /* 30245*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15562 | /* 30247*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 15563 | /* 30249*/ OPC_CheckType, MVT::i64, |
| 15564 | /* 30251*/ OPC_Scope, 25, /*->30278*/ // 2 children in Scope |
| 15565 | /* 30253*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15566 | /* 30255*/ OPC_EmitMergeInputChains1_0, |
| 15567 | /* 30256*/ OPC_EmitInteger, MVT::i32, 0, |
| 15568 | /* 30259*/ OPC_EmitInteger, MVT::i32, 0, |
| 15569 | /* 30262*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15570 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15571 | /* 30269*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15572 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15573 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 10 |
| 15574 | // Dst: (LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15575 | /* 30278*/ /*Scope*/ 25, /*->30304*/ |
| 15576 | /* 30279*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15577 | /* 30281*/ OPC_EmitMergeInputChains1_0, |
| 15578 | /* 30282*/ OPC_EmitInteger, MVT::i32, 0, |
| 15579 | /* 30285*/ OPC_EmitInteger, MVT::i64, 0, |
| 15580 | /* 30288*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15581 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15582 | /* 30295*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15583 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15584 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 10 |
| 15585 | // Dst: (LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15586 | /* 30304*/ 0, /*End of Scope*/ |
| 15587 | /* 30305*/ /*Scope*/ 60, /*->30366*/ |
| 15588 | /* 30306*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15589 | /* 30308*/ OPC_CheckPredicate, 6, // Predicate_sextloadi32 |
| 15590 | /* 30310*/ OPC_CheckType, MVT::i64, |
| 15591 | /* 30312*/ OPC_Scope, 25, /*->30339*/ // 2 children in Scope |
| 15592 | /* 30314*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15593 | /* 30316*/ OPC_EmitMergeInputChains1_0, |
| 15594 | /* 30317*/ OPC_EmitInteger, MVT::i32, 0, |
| 15595 | /* 30320*/ OPC_EmitInteger, MVT::i32, 0, |
| 15596 | /* 30323*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15597 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15598 | /* 30330*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15599 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15600 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi32>> - Complexity = 10 |
| 15601 | // Dst: (LOAD32_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15602 | /* 30339*/ /*Scope*/ 25, /*->30365*/ |
| 15603 | /* 30340*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15604 | /* 30342*/ OPC_EmitMergeInputChains1_0, |
| 15605 | /* 30343*/ OPC_EmitInteger, MVT::i32, 0, |
| 15606 | /* 30346*/ OPC_EmitInteger, MVT::i64, 0, |
| 15607 | /* 30349*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15608 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15609 | /* 30356*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15610 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15611 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi32>> - Complexity = 10 |
| 15612 | // Dst: (LOAD32_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15613 | /* 30365*/ 0, /*End of Scope*/ |
| 15614 | /* 30366*/ /*Scope*/ 60, /*->30427*/ |
| 15615 | /* 30367*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15616 | /* 30369*/ OPC_CheckPredicate, 6, // Predicate_zextloadi32 |
| 15617 | /* 30371*/ OPC_CheckType, MVT::i64, |
| 15618 | /* 30373*/ OPC_Scope, 25, /*->30400*/ // 2 children in Scope |
| 15619 | /* 30375*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15620 | /* 30377*/ OPC_EmitMergeInputChains1_0, |
| 15621 | /* 30378*/ OPC_EmitInteger, MVT::i32, 0, |
| 15622 | /* 30381*/ OPC_EmitInteger, MVT::i32, 0, |
| 15623 | /* 30384*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15624 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15625 | /* 30391*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15626 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15627 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi32>> - Complexity = 10 |
| 15628 | // Dst: (LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15629 | /* 30400*/ /*Scope*/ 25, /*->30426*/ |
| 15630 | /* 30401*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15631 | /* 30403*/ OPC_EmitMergeInputChains1_0, |
| 15632 | /* 30404*/ OPC_EmitInteger, MVT::i32, 0, |
| 15633 | /* 30407*/ OPC_EmitInteger, MVT::i64, 0, |
| 15634 | /* 30410*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15635 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15636 | /* 30417*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15637 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15638 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi32>> - Complexity = 10 |
| 15639 | // Dst: (LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15640 | /* 30426*/ 0, /*End of Scope*/ |
| 15641 | /* 30427*/ /*Scope*/ 42|128,2/*298*/, /*->30727*/ |
| 15642 | /* 30429*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 15643 | /* 30431*/ OPC_SwitchType /*2 cases */, 116, MVT::i32,// ->30550 |
| 15644 | /* 30434*/ OPC_Scope, 56, /*->30492*/ // 2 children in Scope |
| 15645 | /* 30436*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 15646 | /* 30438*/ OPC_Scope, 25, /*->30465*/ // 2 children in Scope |
| 15647 | /* 30440*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15648 | /* 30442*/ OPC_EmitMergeInputChains1_0, |
| 15649 | /* 30443*/ OPC_EmitInteger, MVT::i32, 0, |
| 15650 | /* 30446*/ OPC_EmitInteger, MVT::i32, 0, |
| 15651 | /* 30449*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15652 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15653 | /* 30456*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15654 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15655 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 10 |
| 15656 | // Dst: (LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15657 | /* 30465*/ /*Scope*/ 25, /*->30491*/ |
| 15658 | /* 30466*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15659 | /* 30468*/ OPC_EmitMergeInputChains1_0, |
| 15660 | /* 30469*/ OPC_EmitInteger, MVT::i32, 0, |
| 15661 | /* 30472*/ OPC_EmitInteger, MVT::i64, 0, |
| 15662 | /* 30475*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15663 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15664 | /* 30482*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15665 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15666 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 10 |
| 15667 | // Dst: (LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15668 | /* 30491*/ 0, /*End of Scope*/ |
| 15669 | /* 30492*/ /*Scope*/ 56, /*->30549*/ |
| 15670 | /* 30493*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 15671 | /* 30495*/ OPC_Scope, 25, /*->30522*/ // 2 children in Scope |
| 15672 | /* 30497*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15673 | /* 30499*/ OPC_EmitMergeInputChains1_0, |
| 15674 | /* 30500*/ OPC_EmitInteger, MVT::i32, 0, |
| 15675 | /* 30503*/ OPC_EmitInteger, MVT::i32, 0, |
| 15676 | /* 30506*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15677 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15678 | /* 30513*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15679 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15680 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 10 |
| 15681 | // Dst: (LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15682 | /* 30522*/ /*Scope*/ 25, /*->30548*/ |
| 15683 | /* 30523*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15684 | /* 30525*/ OPC_EmitMergeInputChains1_0, |
| 15685 | /* 30526*/ OPC_EmitInteger, MVT::i32, 0, |
| 15686 | /* 30529*/ OPC_EmitInteger, MVT::i64, 0, |
| 15687 | /* 30532*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15688 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15689 | /* 30539*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15690 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 15691 | // Src: (ld:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 10 |
| 15692 | // Dst: (LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15693 | /* 30548*/ 0, /*End of Scope*/ |
| 15694 | /* 30549*/ 0, /*End of Scope*/ |
| 15695 | /* 30550*/ /*SwitchType*/ 45|128,1/*173*/, MVT::i64,// ->30726 |
| 15696 | /* 30553*/ OPC_Scope, 56, /*->30611*/ // 3 children in Scope |
| 15697 | /* 30555*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 15698 | /* 30557*/ OPC_Scope, 25, /*->30584*/ // 2 children in Scope |
| 15699 | /* 30559*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15700 | /* 30561*/ OPC_EmitMergeInputChains1_0, |
| 15701 | /* 30562*/ OPC_EmitInteger, MVT::i32, 0, |
| 15702 | /* 30565*/ OPC_EmitInteger, MVT::i32, 0, |
| 15703 | /* 30568*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15704 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15705 | /* 30575*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15706 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15707 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 10 |
| 15708 | // Dst: (LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15709 | /* 30584*/ /*Scope*/ 25, /*->30610*/ |
| 15710 | /* 30585*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15711 | /* 30587*/ OPC_EmitMergeInputChains1_0, |
| 15712 | /* 30588*/ OPC_EmitInteger, MVT::i32, 0, |
| 15713 | /* 30591*/ OPC_EmitInteger, MVT::i64, 0, |
| 15714 | /* 30594*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15715 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15716 | /* 30601*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15717 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15718 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 10 |
| 15719 | // Dst: (LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15720 | /* 30610*/ 0, /*End of Scope*/ |
| 15721 | /* 30611*/ /*Scope*/ 56, /*->30668*/ |
| 15722 | /* 30612*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 15723 | /* 30614*/ OPC_Scope, 25, /*->30641*/ // 2 children in Scope |
| 15724 | /* 30616*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15725 | /* 30618*/ OPC_EmitMergeInputChains1_0, |
| 15726 | /* 30619*/ OPC_EmitInteger, MVT::i32, 0, |
| 15727 | /* 30622*/ OPC_EmitInteger, MVT::i32, 0, |
| 15728 | /* 30625*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15729 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15730 | /* 30632*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15731 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15732 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 10 |
| 15733 | // Dst: (LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15734 | /* 30641*/ /*Scope*/ 25, /*->30667*/ |
| 15735 | /* 30642*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15736 | /* 30644*/ OPC_EmitMergeInputChains1_0, |
| 15737 | /* 30645*/ OPC_EmitInteger, MVT::i32, 0, |
| 15738 | /* 30648*/ OPC_EmitInteger, MVT::i64, 0, |
| 15739 | /* 30651*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15740 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15741 | /* 30658*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15742 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15743 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 10 |
| 15744 | // Dst: (LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15745 | /* 30667*/ 0, /*End of Scope*/ |
| 15746 | /* 30668*/ /*Scope*/ 56, /*->30725*/ |
| 15747 | /* 30669*/ OPC_CheckPredicate, 6, // Predicate_extloadi32 |
| 15748 | /* 30671*/ OPC_Scope, 25, /*->30698*/ // 2 children in Scope |
| 15749 | /* 30673*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15750 | /* 30675*/ OPC_EmitMergeInputChains1_0, |
| 15751 | /* 30676*/ OPC_EmitInteger, MVT::i32, 0, |
| 15752 | /* 30679*/ OPC_EmitInteger, MVT::i32, 0, |
| 15753 | /* 30682*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15754 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 15755 | /* 30689*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15756 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15757 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi32>> - Complexity = 10 |
| 15758 | // Dst: (LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15759 | /* 30698*/ /*Scope*/ 25, /*->30724*/ |
| 15760 | /* 30699*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 15761 | /* 30701*/ OPC_EmitMergeInputChains1_0, |
| 15762 | /* 30702*/ OPC_EmitInteger, MVT::i32, 0, |
| 15763 | /* 30705*/ OPC_EmitInteger, MVT::i64, 0, |
| 15764 | /* 30708*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15765 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 15766 | /* 30715*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15767 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 15768 | // Src: (ld:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi32>> - Complexity = 10 |
| 15769 | // Dst: (LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15770 | /* 30724*/ 0, /*End of Scope*/ |
| 15771 | /* 30725*/ 0, /*End of Scope*/ |
| 15772 | /* 30726*/ 0, // EndSwitchType |
| 15773 | /* 30727*/ 0, /*End of Scope*/ |
| 15774 | /* 30728*/ 0, // EndSwitchOpcode |
| 15775 | /* 30729*/ /*Scope*/ 31|128,15/*1951*/, /*->32682*/ |
| 15776 | /* 30731*/ OPC_RecordChild1, // #1 = $off |
| 15777 | /* 30732*/ OPC_Scope, 80|128,8/*1104*/, /*->31839*/ // 3 children in Scope |
| 15778 | /* 30735*/ OPC_MoveChild1, |
| 15779 | /* 30736*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 15780 | /* 30739*/ OPC_MoveParent, |
| 15781 | /* 30740*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 15782 | /* 30742*/ OPC_Scope, 124, /*->30868*/ // 12 children in Scope |
| 15783 | /* 30744*/ OPC_CheckPredicate, 11, // Predicate_load |
| 15784 | /* 30746*/ OPC_SwitchType /*2 cases */, 58, MVT::i32,// ->30807 |
| 15785 | /* 30749*/ OPC_Scope, 27, /*->30778*/ // 2 children in Scope |
| 15786 | /* 30751*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15787 | /* 30753*/ OPC_EmitMergeInputChains1_0, |
| 15788 | /* 30754*/ OPC_EmitInteger, MVT::i32, 0, |
| 15789 | /* 30757*/ OPC_EmitConvertToTarget, 1, |
| 15790 | /* 30759*/ OPC_EmitInteger, MVT::i32, 0, |
| 15791 | /* 30762*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15792 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 15793 | /* 30769*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15794 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 15795 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 15796 | // Dst: (LOAD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15797 | /* 30778*/ /*Scope*/ 27, /*->30806*/ |
| 15798 | /* 30779*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15799 | /* 30781*/ OPC_EmitMergeInputChains1_0, |
| 15800 | /* 30782*/ OPC_EmitInteger, MVT::i32, 0, |
| 15801 | /* 30785*/ OPC_EmitConvertToTarget, 1, |
| 15802 | /* 30787*/ OPC_EmitInteger, MVT::i64, 0, |
| 15803 | /* 30790*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15804 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 15805 | /* 30797*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15806 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 15807 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 15808 | // Dst: (LOAD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15809 | /* 30806*/ 0, /*End of Scope*/ |
| 15810 | /* 30807*/ /*SwitchType*/ 58, MVT::i64,// ->30867 |
| 15811 | /* 30809*/ OPC_Scope, 27, /*->30838*/ // 2 children in Scope |
| 15812 | /* 30811*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15813 | /* 30813*/ OPC_EmitMergeInputChains1_0, |
| 15814 | /* 30814*/ OPC_EmitInteger, MVT::i32, 0, |
| 15815 | /* 30817*/ OPC_EmitConvertToTarget, 1, |
| 15816 | /* 30819*/ OPC_EmitInteger, MVT::i32, 0, |
| 15817 | /* 30822*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15818 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 15819 | /* 30829*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15820 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 15821 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 15822 | // Dst: (LOAD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15823 | /* 30838*/ /*Scope*/ 27, /*->30866*/ |
| 15824 | /* 30839*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15825 | /* 30841*/ OPC_EmitMergeInputChains1_0, |
| 15826 | /* 30842*/ OPC_EmitInteger, MVT::i32, 0, |
| 15827 | /* 30845*/ OPC_EmitConvertToTarget, 1, |
| 15828 | /* 30847*/ OPC_EmitInteger, MVT::i64, 0, |
| 15829 | /* 30850*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15830 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 15831 | /* 30857*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15832 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 15833 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 15834 | // Dst: (LOAD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15835 | /* 30866*/ 0, /*End of Scope*/ |
| 15836 | /* 30867*/ 0, // EndSwitchType |
| 15837 | /* 30868*/ /*Scope*/ 64, /*->30933*/ |
| 15838 | /* 30869*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15839 | /* 30871*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 15840 | /* 30873*/ OPC_CheckType, MVT::i32, |
| 15841 | /* 30875*/ OPC_Scope, 27, /*->30904*/ // 2 children in Scope |
| 15842 | /* 30877*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15843 | /* 30879*/ OPC_EmitMergeInputChains1_0, |
| 15844 | /* 30880*/ OPC_EmitInteger, MVT::i32, 0, |
| 15845 | /* 30883*/ OPC_EmitConvertToTarget, 1, |
| 15846 | /* 30885*/ OPC_EmitInteger, MVT::i32, 0, |
| 15847 | /* 30888*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15848 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 15849 | /* 30895*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15850 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 15851 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 7 |
| 15852 | // Dst: (LOAD8_S_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15853 | /* 30904*/ /*Scope*/ 27, /*->30932*/ |
| 15854 | /* 30905*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15855 | /* 30907*/ OPC_EmitMergeInputChains1_0, |
| 15856 | /* 30908*/ OPC_EmitInteger, MVT::i32, 0, |
| 15857 | /* 30911*/ OPC_EmitConvertToTarget, 1, |
| 15858 | /* 30913*/ OPC_EmitInteger, MVT::i64, 0, |
| 15859 | /* 30916*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15860 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 15861 | /* 30923*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15862 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 15863 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 7 |
| 15864 | // Dst: (LOAD8_S_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15865 | /* 30932*/ 0, /*End of Scope*/ |
| 15866 | /* 30933*/ /*Scope*/ 64, /*->30998*/ |
| 15867 | /* 30934*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15868 | /* 30936*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 15869 | /* 30938*/ OPC_CheckType, MVT::i32, |
| 15870 | /* 30940*/ OPC_Scope, 27, /*->30969*/ // 2 children in Scope |
| 15871 | /* 30942*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15872 | /* 30944*/ OPC_EmitMergeInputChains1_0, |
| 15873 | /* 30945*/ OPC_EmitInteger, MVT::i32, 0, |
| 15874 | /* 30948*/ OPC_EmitConvertToTarget, 1, |
| 15875 | /* 30950*/ OPC_EmitInteger, MVT::i32, 0, |
| 15876 | /* 30953*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15877 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 15878 | /* 30960*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15879 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 15880 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 7 |
| 15881 | // Dst: (LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15882 | /* 30969*/ /*Scope*/ 27, /*->30997*/ |
| 15883 | /* 30970*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15884 | /* 30972*/ OPC_EmitMergeInputChains1_0, |
| 15885 | /* 30973*/ OPC_EmitInteger, MVT::i32, 0, |
| 15886 | /* 30976*/ OPC_EmitConvertToTarget, 1, |
| 15887 | /* 30978*/ OPC_EmitInteger, MVT::i64, 0, |
| 15888 | /* 30981*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15889 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 15890 | /* 30988*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15891 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 15892 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 7 |
| 15893 | // Dst: (LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15894 | /* 30997*/ 0, /*End of Scope*/ |
| 15895 | /* 30998*/ /*Scope*/ 64, /*->31063*/ |
| 15896 | /* 30999*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15897 | /* 31001*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 15898 | /* 31003*/ OPC_CheckType, MVT::i32, |
| 15899 | /* 31005*/ OPC_Scope, 27, /*->31034*/ // 2 children in Scope |
| 15900 | /* 31007*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15901 | /* 31009*/ OPC_EmitMergeInputChains1_0, |
| 15902 | /* 31010*/ OPC_EmitInteger, MVT::i32, 0, |
| 15903 | /* 31013*/ OPC_EmitConvertToTarget, 1, |
| 15904 | /* 31015*/ OPC_EmitInteger, MVT::i32, 0, |
| 15905 | /* 31018*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15906 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 15907 | /* 31025*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15908 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 15909 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 7 |
| 15910 | // Dst: (LOAD16_S_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15911 | /* 31034*/ /*Scope*/ 27, /*->31062*/ |
| 15912 | /* 31035*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15913 | /* 31037*/ OPC_EmitMergeInputChains1_0, |
| 15914 | /* 31038*/ OPC_EmitInteger, MVT::i32, 0, |
| 15915 | /* 31041*/ OPC_EmitConvertToTarget, 1, |
| 15916 | /* 31043*/ OPC_EmitInteger, MVT::i64, 0, |
| 15917 | /* 31046*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15918 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 15919 | /* 31053*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15920 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 15921 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 7 |
| 15922 | // Dst: (LOAD16_S_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15923 | /* 31062*/ 0, /*End of Scope*/ |
| 15924 | /* 31063*/ /*Scope*/ 64, /*->31128*/ |
| 15925 | /* 31064*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15926 | /* 31066*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 15927 | /* 31068*/ OPC_CheckType, MVT::i32, |
| 15928 | /* 31070*/ OPC_Scope, 27, /*->31099*/ // 2 children in Scope |
| 15929 | /* 31072*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15930 | /* 31074*/ OPC_EmitMergeInputChains1_0, |
| 15931 | /* 31075*/ OPC_EmitInteger, MVT::i32, 0, |
| 15932 | /* 31078*/ OPC_EmitConvertToTarget, 1, |
| 15933 | /* 31080*/ OPC_EmitInteger, MVT::i32, 0, |
| 15934 | /* 31083*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15935 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 15936 | /* 31090*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15937 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 15938 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 7 |
| 15939 | // Dst: (LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15940 | /* 31099*/ /*Scope*/ 27, /*->31127*/ |
| 15941 | /* 31100*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15942 | /* 31102*/ OPC_EmitMergeInputChains1_0, |
| 15943 | /* 31103*/ OPC_EmitInteger, MVT::i32, 0, |
| 15944 | /* 31106*/ OPC_EmitConvertToTarget, 1, |
| 15945 | /* 31108*/ OPC_EmitInteger, MVT::i64, 0, |
| 15946 | /* 31111*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15947 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 15948 | /* 31118*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15949 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 15950 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 7 |
| 15951 | // Dst: (LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15952 | /* 31127*/ 0, /*End of Scope*/ |
| 15953 | /* 31128*/ /*Scope*/ 64, /*->31193*/ |
| 15954 | /* 31129*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 15955 | /* 31131*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 15956 | /* 31133*/ OPC_CheckType, MVT::i64, |
| 15957 | /* 31135*/ OPC_Scope, 27, /*->31164*/ // 2 children in Scope |
| 15958 | /* 31137*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15959 | /* 31139*/ OPC_EmitMergeInputChains1_0, |
| 15960 | /* 31140*/ OPC_EmitInteger, MVT::i32, 0, |
| 15961 | /* 31143*/ OPC_EmitConvertToTarget, 1, |
| 15962 | /* 31145*/ OPC_EmitInteger, MVT::i32, 0, |
| 15963 | /* 31148*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15964 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 15965 | /* 31155*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15966 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 15967 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 7 |
| 15968 | // Dst: (LOAD8_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15969 | /* 31164*/ /*Scope*/ 27, /*->31192*/ |
| 15970 | /* 31165*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 15971 | /* 31167*/ OPC_EmitMergeInputChains1_0, |
| 15972 | /* 31168*/ OPC_EmitInteger, MVT::i32, 0, |
| 15973 | /* 31171*/ OPC_EmitConvertToTarget, 1, |
| 15974 | /* 31173*/ OPC_EmitInteger, MVT::i64, 0, |
| 15975 | /* 31176*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 15976 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 15977 | /* 31183*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 15978 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 15979 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 7 |
| 15980 | // Dst: (LOAD8_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 15981 | /* 31192*/ 0, /*End of Scope*/ |
| 15982 | /* 31193*/ /*Scope*/ 64, /*->31258*/ |
| 15983 | /* 31194*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 15984 | /* 31196*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 15985 | /* 31198*/ OPC_CheckType, MVT::i64, |
| 15986 | /* 31200*/ OPC_Scope, 27, /*->31229*/ // 2 children in Scope |
| 15987 | /* 31202*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 15988 | /* 31204*/ OPC_EmitMergeInputChains1_0, |
| 15989 | /* 31205*/ OPC_EmitInteger, MVT::i32, 0, |
| 15990 | /* 31208*/ OPC_EmitConvertToTarget, 1, |
| 15991 | /* 31210*/ OPC_EmitInteger, MVT::i32, 0, |
| 15992 | /* 31213*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 15993 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 15994 | /* 31220*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 15995 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 15996 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 7 |
| 15997 | // Dst: (LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 15998 | /* 31229*/ /*Scope*/ 27, /*->31257*/ |
| 15999 | /* 31230*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16000 | /* 31232*/ OPC_EmitMergeInputChains1_0, |
| 16001 | /* 31233*/ OPC_EmitInteger, MVT::i32, 0, |
| 16002 | /* 31236*/ OPC_EmitConvertToTarget, 1, |
| 16003 | /* 31238*/ OPC_EmitInteger, MVT::i64, 0, |
| 16004 | /* 31241*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16005 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 16006 | /* 31248*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16007 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16008 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 7 |
| 16009 | // Dst: (LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16010 | /* 31257*/ 0, /*End of Scope*/ |
| 16011 | /* 31258*/ /*Scope*/ 64, /*->31323*/ |
| 16012 | /* 31259*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 16013 | /* 31261*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 16014 | /* 31263*/ OPC_CheckType, MVT::i64, |
| 16015 | /* 31265*/ OPC_Scope, 27, /*->31294*/ // 2 children in Scope |
| 16016 | /* 31267*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16017 | /* 31269*/ OPC_EmitMergeInputChains1_0, |
| 16018 | /* 31270*/ OPC_EmitInteger, MVT::i32, 0, |
| 16019 | /* 31273*/ OPC_EmitConvertToTarget, 1, |
| 16020 | /* 31275*/ OPC_EmitInteger, MVT::i32, 0, |
| 16021 | /* 31278*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16022 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 16023 | /* 31285*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16024 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16025 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 7 |
| 16026 | // Dst: (LOAD16_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16027 | /* 31294*/ /*Scope*/ 27, /*->31322*/ |
| 16028 | /* 31295*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16029 | /* 31297*/ OPC_EmitMergeInputChains1_0, |
| 16030 | /* 31298*/ OPC_EmitInteger, MVT::i32, 0, |
| 16031 | /* 31301*/ OPC_EmitConvertToTarget, 1, |
| 16032 | /* 31303*/ OPC_EmitInteger, MVT::i64, 0, |
| 16033 | /* 31306*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16034 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 16035 | /* 31313*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16036 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16037 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 7 |
| 16038 | // Dst: (LOAD16_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16039 | /* 31322*/ 0, /*End of Scope*/ |
| 16040 | /* 31323*/ /*Scope*/ 64, /*->31388*/ |
| 16041 | /* 31324*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 16042 | /* 31326*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 16043 | /* 31328*/ OPC_CheckType, MVT::i64, |
| 16044 | /* 31330*/ OPC_Scope, 27, /*->31359*/ // 2 children in Scope |
| 16045 | /* 31332*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16046 | /* 31334*/ OPC_EmitMergeInputChains1_0, |
| 16047 | /* 31335*/ OPC_EmitInteger, MVT::i32, 0, |
| 16048 | /* 31338*/ OPC_EmitConvertToTarget, 1, |
| 16049 | /* 31340*/ OPC_EmitInteger, MVT::i32, 0, |
| 16050 | /* 31343*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16051 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 16052 | /* 31350*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16053 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16054 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 7 |
| 16055 | // Dst: (LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16056 | /* 31359*/ /*Scope*/ 27, /*->31387*/ |
| 16057 | /* 31360*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16058 | /* 31362*/ OPC_EmitMergeInputChains1_0, |
| 16059 | /* 31363*/ OPC_EmitInteger, MVT::i32, 0, |
| 16060 | /* 31366*/ OPC_EmitConvertToTarget, 1, |
| 16061 | /* 31368*/ OPC_EmitInteger, MVT::i64, 0, |
| 16062 | /* 31371*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16063 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 16064 | /* 31378*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16065 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16066 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 7 |
| 16067 | // Dst: (LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16068 | /* 31387*/ 0, /*End of Scope*/ |
| 16069 | /* 31388*/ /*Scope*/ 64, /*->31453*/ |
| 16070 | /* 31389*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 16071 | /* 31391*/ OPC_CheckPredicate, 6, // Predicate_sextloadi32 |
| 16072 | /* 31393*/ OPC_CheckType, MVT::i64, |
| 16073 | /* 31395*/ OPC_Scope, 27, /*->31424*/ // 2 children in Scope |
| 16074 | /* 31397*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16075 | /* 31399*/ OPC_EmitMergeInputChains1_0, |
| 16076 | /* 31400*/ OPC_EmitInteger, MVT::i32, 0, |
| 16077 | /* 31403*/ OPC_EmitConvertToTarget, 1, |
| 16078 | /* 31405*/ OPC_EmitInteger, MVT::i32, 0, |
| 16079 | /* 31408*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16080 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 16081 | /* 31415*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16082 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16083 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi32>> - Complexity = 7 |
| 16084 | // Dst: (LOAD32_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16085 | /* 31424*/ /*Scope*/ 27, /*->31452*/ |
| 16086 | /* 31425*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16087 | /* 31427*/ OPC_EmitMergeInputChains1_0, |
| 16088 | /* 31428*/ OPC_EmitInteger, MVT::i32, 0, |
| 16089 | /* 31431*/ OPC_EmitConvertToTarget, 1, |
| 16090 | /* 31433*/ OPC_EmitInteger, MVT::i64, 0, |
| 16091 | /* 31436*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16092 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 16093 | /* 31443*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16094 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16095 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi32>> - Complexity = 7 |
| 16096 | // Dst: (LOAD32_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16097 | /* 31452*/ 0, /*End of Scope*/ |
| 16098 | /* 31453*/ /*Scope*/ 64, /*->31518*/ |
| 16099 | /* 31454*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 16100 | /* 31456*/ OPC_CheckPredicate, 6, // Predicate_zextloadi32 |
| 16101 | /* 31458*/ OPC_CheckType, MVT::i64, |
| 16102 | /* 31460*/ OPC_Scope, 27, /*->31489*/ // 2 children in Scope |
| 16103 | /* 31462*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16104 | /* 31464*/ OPC_EmitMergeInputChains1_0, |
| 16105 | /* 31465*/ OPC_EmitInteger, MVT::i32, 0, |
| 16106 | /* 31468*/ OPC_EmitConvertToTarget, 1, |
| 16107 | /* 31470*/ OPC_EmitInteger, MVT::i32, 0, |
| 16108 | /* 31473*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16109 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 16110 | /* 31480*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16111 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16112 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi32>> - Complexity = 7 |
| 16113 | // Dst: (LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16114 | /* 31489*/ /*Scope*/ 27, /*->31517*/ |
| 16115 | /* 31490*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16116 | /* 31492*/ OPC_EmitMergeInputChains1_0, |
| 16117 | /* 31493*/ OPC_EmitInteger, MVT::i32, 0, |
| 16118 | /* 31496*/ OPC_EmitConvertToTarget, 1, |
| 16119 | /* 31498*/ OPC_EmitInteger, MVT::i64, 0, |
| 16120 | /* 31501*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16121 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 16122 | /* 31508*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16123 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16124 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi32>> - Complexity = 7 |
| 16125 | // Dst: (LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16126 | /* 31517*/ 0, /*End of Scope*/ |
| 16127 | /* 31518*/ /*Scope*/ 62|128,2/*318*/, /*->31838*/ |
| 16128 | /* 31520*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 16129 | /* 31522*/ OPC_SwitchType /*2 cases */, 124, MVT::i32,// ->31649 |
| 16130 | /* 31525*/ OPC_Scope, 60, /*->31587*/ // 2 children in Scope |
| 16131 | /* 31527*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 16132 | /* 31529*/ OPC_Scope, 27, /*->31558*/ // 2 children in Scope |
| 16133 | /* 31531*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16134 | /* 31533*/ OPC_EmitMergeInputChains1_0, |
| 16135 | /* 31534*/ OPC_EmitInteger, MVT::i32, 0, |
| 16136 | /* 31537*/ OPC_EmitConvertToTarget, 1, |
| 16137 | /* 31539*/ OPC_EmitInteger, MVT::i32, 0, |
| 16138 | /* 31542*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16139 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 16140 | /* 31549*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16141 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 16142 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 7 |
| 16143 | // Dst: (LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16144 | /* 31558*/ /*Scope*/ 27, /*->31586*/ |
| 16145 | /* 31559*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16146 | /* 31561*/ OPC_EmitMergeInputChains1_0, |
| 16147 | /* 31562*/ OPC_EmitInteger, MVT::i32, 0, |
| 16148 | /* 31565*/ OPC_EmitConvertToTarget, 1, |
| 16149 | /* 31567*/ OPC_EmitInteger, MVT::i64, 0, |
| 16150 | /* 31570*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16151 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 16152 | /* 31577*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16153 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 16154 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 7 |
| 16155 | // Dst: (LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16156 | /* 31586*/ 0, /*End of Scope*/ |
| 16157 | /* 31587*/ /*Scope*/ 60, /*->31648*/ |
| 16158 | /* 31588*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 16159 | /* 31590*/ OPC_Scope, 27, /*->31619*/ // 2 children in Scope |
| 16160 | /* 31592*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16161 | /* 31594*/ OPC_EmitMergeInputChains1_0, |
| 16162 | /* 31595*/ OPC_EmitInteger, MVT::i32, 0, |
| 16163 | /* 31598*/ OPC_EmitConvertToTarget, 1, |
| 16164 | /* 31600*/ OPC_EmitInteger, MVT::i32, 0, |
| 16165 | /* 31603*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16166 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 16167 | /* 31610*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16168 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 16169 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 7 |
| 16170 | // Dst: (LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16171 | /* 31619*/ /*Scope*/ 27, /*->31647*/ |
| 16172 | /* 31620*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16173 | /* 31622*/ OPC_EmitMergeInputChains1_0, |
| 16174 | /* 31623*/ OPC_EmitInteger, MVT::i32, 0, |
| 16175 | /* 31626*/ OPC_EmitConvertToTarget, 1, |
| 16176 | /* 31628*/ OPC_EmitInteger, MVT::i64, 0, |
| 16177 | /* 31631*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16178 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 16179 | /* 31638*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16180 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 16181 | // Src: (ld:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 7 |
| 16182 | // Dst: (LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16183 | /* 31647*/ 0, /*End of Scope*/ |
| 16184 | /* 31648*/ 0, /*End of Scope*/ |
| 16185 | /* 31649*/ /*SwitchType*/ 57|128,1/*185*/, MVT::i64,// ->31837 |
| 16186 | /* 31652*/ OPC_Scope, 60, /*->31714*/ // 3 children in Scope |
| 16187 | /* 31654*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 16188 | /* 31656*/ OPC_Scope, 27, /*->31685*/ // 2 children in Scope |
| 16189 | /* 31658*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16190 | /* 31660*/ OPC_EmitMergeInputChains1_0, |
| 16191 | /* 31661*/ OPC_EmitInteger, MVT::i32, 0, |
| 16192 | /* 31664*/ OPC_EmitConvertToTarget, 1, |
| 16193 | /* 31666*/ OPC_EmitInteger, MVT::i32, 0, |
| 16194 | /* 31669*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16195 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 16196 | /* 31676*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16197 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16198 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 7 |
| 16199 | // Dst: (LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16200 | /* 31685*/ /*Scope*/ 27, /*->31713*/ |
| 16201 | /* 31686*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16202 | /* 31688*/ OPC_EmitMergeInputChains1_0, |
| 16203 | /* 31689*/ OPC_EmitInteger, MVT::i32, 0, |
| 16204 | /* 31692*/ OPC_EmitConvertToTarget, 1, |
| 16205 | /* 31694*/ OPC_EmitInteger, MVT::i64, 0, |
| 16206 | /* 31697*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16207 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 16208 | /* 31704*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16209 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16210 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 7 |
| 16211 | // Dst: (LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16212 | /* 31713*/ 0, /*End of Scope*/ |
| 16213 | /* 31714*/ /*Scope*/ 60, /*->31775*/ |
| 16214 | /* 31715*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 16215 | /* 31717*/ OPC_Scope, 27, /*->31746*/ // 2 children in Scope |
| 16216 | /* 31719*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16217 | /* 31721*/ OPC_EmitMergeInputChains1_0, |
| 16218 | /* 31722*/ OPC_EmitInteger, MVT::i32, 0, |
| 16219 | /* 31725*/ OPC_EmitConvertToTarget, 1, |
| 16220 | /* 31727*/ OPC_EmitInteger, MVT::i32, 0, |
| 16221 | /* 31730*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16222 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 16223 | /* 31737*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16224 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16225 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 7 |
| 16226 | // Dst: (LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16227 | /* 31746*/ /*Scope*/ 27, /*->31774*/ |
| 16228 | /* 31747*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16229 | /* 31749*/ OPC_EmitMergeInputChains1_0, |
| 16230 | /* 31750*/ OPC_EmitInteger, MVT::i32, 0, |
| 16231 | /* 31753*/ OPC_EmitConvertToTarget, 1, |
| 16232 | /* 31755*/ OPC_EmitInteger, MVT::i64, 0, |
| 16233 | /* 31758*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16234 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 16235 | /* 31765*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16236 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16237 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 7 |
| 16238 | // Dst: (LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16239 | /* 31774*/ 0, /*End of Scope*/ |
| 16240 | /* 31775*/ /*Scope*/ 60, /*->31836*/ |
| 16241 | /* 31776*/ OPC_CheckPredicate, 6, // Predicate_extloadi32 |
| 16242 | /* 31778*/ OPC_Scope, 27, /*->31807*/ // 2 children in Scope |
| 16243 | /* 31780*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16244 | /* 31782*/ OPC_EmitMergeInputChains1_0, |
| 16245 | /* 31783*/ OPC_EmitInteger, MVT::i32, 0, |
| 16246 | /* 31786*/ OPC_EmitConvertToTarget, 1, |
| 16247 | /* 31788*/ OPC_EmitInteger, MVT::i32, 0, |
| 16248 | /* 31791*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16249 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 16250 | /* 31798*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16251 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16252 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi32>> - Complexity = 7 |
| 16253 | // Dst: (LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16254 | /* 31807*/ /*Scope*/ 27, /*->31835*/ |
| 16255 | /* 31808*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16256 | /* 31810*/ OPC_EmitMergeInputChains1_0, |
| 16257 | /* 31811*/ OPC_EmitInteger, MVT::i32, 0, |
| 16258 | /* 31814*/ OPC_EmitConvertToTarget, 1, |
| 16259 | /* 31816*/ OPC_EmitInteger, MVT::i64, 0, |
| 16260 | /* 31819*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16261 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 16262 | /* 31826*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16263 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 16264 | // Src: (ld:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi32>> - Complexity = 7 |
| 16265 | // Dst: (LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16266 | /* 31835*/ 0, /*End of Scope*/ |
| 16267 | /* 31836*/ 0, /*End of Scope*/ |
| 16268 | /* 31837*/ 0, // EndSwitchType |
| 16269 | /* 31838*/ 0, /*End of Scope*/ |
| 16270 | /* 31839*/ /*Scope*/ 35|128,3/*419*/, /*->32260*/ |
| 16271 | /* 31841*/ OPC_CheckChild1Type, MVT::i32, |
| 16272 | /* 31843*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 16273 | /* 31845*/ OPC_Scope, 44, /*->31891*/ // 12 children in Scope |
| 16274 | /* 31847*/ OPC_CheckPredicate, 11, // Predicate_load |
| 16275 | /* 31849*/ OPC_SwitchType /*2 cases */, 18, MVT::i32,// ->31870 |
| 16276 | /* 31852*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16277 | /* 31854*/ OPC_EmitMergeInputChains1_0, |
| 16278 | /* 31855*/ OPC_EmitInteger, MVT::i32, 0, |
| 16279 | /* 31858*/ OPC_EmitInteger, MVT::i32, 0, |
| 16280 | /* 31861*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16281 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16282 | // Src: (ld:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 16283 | // Dst: (LOAD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16284 | /* 31870*/ /*SwitchType*/ 18, MVT::i64,// ->31890 |
| 16285 | /* 31872*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16286 | /* 31874*/ OPC_EmitMergeInputChains1_0, |
| 16287 | /* 31875*/ OPC_EmitInteger, MVT::i32, 0, |
| 16288 | /* 31878*/ OPC_EmitInteger, MVT::i32, 0, |
| 16289 | /* 31881*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16290 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16291 | // Src: (ld:{ *:[i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 16292 | // Dst: (LOAD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16293 | /* 31890*/ 0, // EndSwitchType |
| 16294 | /* 31891*/ /*Scope*/ 24, /*->31916*/ |
| 16295 | /* 31892*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 16296 | /* 31894*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 16297 | /* 31896*/ OPC_CheckType, MVT::i32, |
| 16298 | /* 31898*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16299 | /* 31900*/ OPC_EmitMergeInputChains1_0, |
| 16300 | /* 31901*/ OPC_EmitInteger, MVT::i32, 0, |
| 16301 | /* 31904*/ OPC_EmitInteger, MVT::i32, 0, |
| 16302 | /* 31907*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16303 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16304 | // Src: (ld:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 4 |
| 16305 | // Dst: (LOAD8_S_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16306 | /* 31916*/ /*Scope*/ 24, /*->31941*/ |
| 16307 | /* 31917*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 16308 | /* 31919*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 16309 | /* 31921*/ OPC_CheckType, MVT::i32, |
| 16310 | /* 31923*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16311 | /* 31925*/ OPC_EmitMergeInputChains1_0, |
| 16312 | /* 31926*/ OPC_EmitInteger, MVT::i32, 0, |
| 16313 | /* 31929*/ OPC_EmitInteger, MVT::i32, 0, |
| 16314 | /* 31932*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16315 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16316 | // Src: (ld:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 4 |
| 16317 | // Dst: (LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16318 | /* 31941*/ /*Scope*/ 24, /*->31966*/ |
| 16319 | /* 31942*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 16320 | /* 31944*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 16321 | /* 31946*/ OPC_CheckType, MVT::i32, |
| 16322 | /* 31948*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16323 | /* 31950*/ OPC_EmitMergeInputChains1_0, |
| 16324 | /* 31951*/ OPC_EmitInteger, MVT::i32, 0, |
| 16325 | /* 31954*/ OPC_EmitInteger, MVT::i32, 0, |
| 16326 | /* 31957*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16327 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16328 | // Src: (ld:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 4 |
| 16329 | // Dst: (LOAD16_S_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16330 | /* 31966*/ /*Scope*/ 24, /*->31991*/ |
| 16331 | /* 31967*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 16332 | /* 31969*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 16333 | /* 31971*/ OPC_CheckType, MVT::i32, |
| 16334 | /* 31973*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16335 | /* 31975*/ OPC_EmitMergeInputChains1_0, |
| 16336 | /* 31976*/ OPC_EmitInteger, MVT::i32, 0, |
| 16337 | /* 31979*/ OPC_EmitInteger, MVT::i32, 0, |
| 16338 | /* 31982*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16339 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16340 | // Src: (ld:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 4 |
| 16341 | // Dst: (LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16342 | /* 31991*/ /*Scope*/ 24, /*->32016*/ |
| 16343 | /* 31992*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 16344 | /* 31994*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 16345 | /* 31996*/ OPC_CheckType, MVT::i64, |
| 16346 | /* 31998*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16347 | /* 32000*/ OPC_EmitMergeInputChains1_0, |
| 16348 | /* 32001*/ OPC_EmitInteger, MVT::i32, 0, |
| 16349 | /* 32004*/ OPC_EmitInteger, MVT::i32, 0, |
| 16350 | /* 32007*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16351 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16352 | // Src: (ld:{ *:[i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 4 |
| 16353 | // Dst: (LOAD8_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16354 | /* 32016*/ /*Scope*/ 24, /*->32041*/ |
| 16355 | /* 32017*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 16356 | /* 32019*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 16357 | /* 32021*/ OPC_CheckType, MVT::i64, |
| 16358 | /* 32023*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16359 | /* 32025*/ OPC_EmitMergeInputChains1_0, |
| 16360 | /* 32026*/ OPC_EmitInteger, MVT::i32, 0, |
| 16361 | /* 32029*/ OPC_EmitInteger, MVT::i32, 0, |
| 16362 | /* 32032*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16363 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16364 | // Src: (ld:{ *:[i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 4 |
| 16365 | // Dst: (LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16366 | /* 32041*/ /*Scope*/ 24, /*->32066*/ |
| 16367 | /* 32042*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 16368 | /* 32044*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 16369 | /* 32046*/ OPC_CheckType, MVT::i64, |
| 16370 | /* 32048*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16371 | /* 32050*/ OPC_EmitMergeInputChains1_0, |
| 16372 | /* 32051*/ OPC_EmitInteger, MVT::i32, 0, |
| 16373 | /* 32054*/ OPC_EmitInteger, MVT::i32, 0, |
| 16374 | /* 32057*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16375 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16376 | // Src: (ld:{ *:[i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 4 |
| 16377 | // Dst: (LOAD16_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16378 | /* 32066*/ /*Scope*/ 24, /*->32091*/ |
| 16379 | /* 32067*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 16380 | /* 32069*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 16381 | /* 32071*/ OPC_CheckType, MVT::i64, |
| 16382 | /* 32073*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16383 | /* 32075*/ OPC_EmitMergeInputChains1_0, |
| 16384 | /* 32076*/ OPC_EmitInteger, MVT::i32, 0, |
| 16385 | /* 32079*/ OPC_EmitInteger, MVT::i32, 0, |
| 16386 | /* 32082*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16387 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16388 | // Src: (ld:{ *:[i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 4 |
| 16389 | // Dst: (LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16390 | /* 32091*/ /*Scope*/ 24, /*->32116*/ |
| 16391 | /* 32092*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 16392 | /* 32094*/ OPC_CheckPredicate, 6, // Predicate_sextloadi32 |
| 16393 | /* 32096*/ OPC_CheckType, MVT::i64, |
| 16394 | /* 32098*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16395 | /* 32100*/ OPC_EmitMergeInputChains1_0, |
| 16396 | /* 32101*/ OPC_EmitInteger, MVT::i32, 0, |
| 16397 | /* 32104*/ OPC_EmitInteger, MVT::i32, 0, |
| 16398 | /* 32107*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16399 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16400 | // Src: (ld:{ *:[i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi32>> - Complexity = 4 |
| 16401 | // Dst: (LOAD32_S_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16402 | /* 32116*/ /*Scope*/ 24, /*->32141*/ |
| 16403 | /* 32117*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 16404 | /* 32119*/ OPC_CheckPredicate, 6, // Predicate_zextloadi32 |
| 16405 | /* 32121*/ OPC_CheckType, MVT::i64, |
| 16406 | /* 32123*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16407 | /* 32125*/ OPC_EmitMergeInputChains1_0, |
| 16408 | /* 32126*/ OPC_EmitInteger, MVT::i32, 0, |
| 16409 | /* 32129*/ OPC_EmitInteger, MVT::i32, 0, |
| 16410 | /* 32132*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16411 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16412 | // Src: (ld:{ *:[i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi32>> - Complexity = 4 |
| 16413 | // Dst: (LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16414 | /* 32141*/ /*Scope*/ 117, /*->32259*/ |
| 16415 | /* 32142*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 16416 | /* 32144*/ OPC_SwitchType /*2 cases */, 44, MVT::i32,// ->32191 |
| 16417 | /* 32147*/ OPC_Scope, 20, /*->32169*/ // 2 children in Scope |
| 16418 | /* 32149*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 16419 | /* 32151*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16420 | /* 32153*/ OPC_EmitMergeInputChains1_0, |
| 16421 | /* 32154*/ OPC_EmitInteger, MVT::i32, 0, |
| 16422 | /* 32157*/ OPC_EmitInteger, MVT::i32, 0, |
| 16423 | /* 32160*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16424 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16425 | // Src: (ld:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 4 |
| 16426 | // Dst: (LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16427 | /* 32169*/ /*Scope*/ 20, /*->32190*/ |
| 16428 | /* 32170*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 16429 | /* 32172*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16430 | /* 32174*/ OPC_EmitMergeInputChains1_0, |
| 16431 | /* 32175*/ OPC_EmitInteger, MVT::i32, 0, |
| 16432 | /* 32178*/ OPC_EmitInteger, MVT::i32, 0, |
| 16433 | /* 32181*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16434 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16435 | // Src: (ld:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 4 |
| 16436 | // Dst: (LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16437 | /* 32190*/ 0, /*End of Scope*/ |
| 16438 | /* 32191*/ /*SwitchType*/ 65, MVT::i64,// ->32258 |
| 16439 | /* 32193*/ OPC_Scope, 20, /*->32215*/ // 3 children in Scope |
| 16440 | /* 32195*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 16441 | /* 32197*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16442 | /* 32199*/ OPC_EmitMergeInputChains1_0, |
| 16443 | /* 32200*/ OPC_EmitInteger, MVT::i32, 0, |
| 16444 | /* 32203*/ OPC_EmitInteger, MVT::i32, 0, |
| 16445 | /* 32206*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16446 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16447 | // Src: (ld:{ *:[i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 4 |
| 16448 | // Dst: (LOAD8_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16449 | /* 32215*/ /*Scope*/ 20, /*->32236*/ |
| 16450 | /* 32216*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 16451 | /* 32218*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16452 | /* 32220*/ OPC_EmitMergeInputChains1_0, |
| 16453 | /* 32221*/ OPC_EmitInteger, MVT::i32, 0, |
| 16454 | /* 32224*/ OPC_EmitInteger, MVT::i32, 0, |
| 16455 | /* 32227*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16456 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16457 | // Src: (ld:{ *:[i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 4 |
| 16458 | // Dst: (LOAD16_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16459 | /* 32236*/ /*Scope*/ 20, /*->32257*/ |
| 16460 | /* 32237*/ OPC_CheckPredicate, 6, // Predicate_extloadi32 |
| 16461 | /* 32239*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16462 | /* 32241*/ OPC_EmitMergeInputChains1_0, |
| 16463 | /* 32242*/ OPC_EmitInteger, MVT::i32, 0, |
| 16464 | /* 32245*/ OPC_EmitInteger, MVT::i32, 0, |
| 16465 | /* 32248*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16466 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16467 | // Src: (ld:{ *:[i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi32>> - Complexity = 4 |
| 16468 | // Dst: (LOAD32_U_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16469 | /* 32257*/ 0, /*End of Scope*/ |
| 16470 | /* 32258*/ 0, // EndSwitchType |
| 16471 | /* 32259*/ 0, /*End of Scope*/ |
| 16472 | /* 32260*/ /*Scope*/ 35|128,3/*419*/, /*->32681*/ |
| 16473 | /* 32262*/ OPC_CheckChild1Type, MVT::i64, |
| 16474 | /* 32264*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 16475 | /* 32266*/ OPC_Scope, 44, /*->32312*/ // 12 children in Scope |
| 16476 | /* 32268*/ OPC_CheckPredicate, 11, // Predicate_load |
| 16477 | /* 32270*/ OPC_SwitchType /*2 cases */, 18, MVT::i32,// ->32291 |
| 16478 | /* 32273*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16479 | /* 32275*/ OPC_EmitMergeInputChains1_0, |
| 16480 | /* 32276*/ OPC_EmitInteger, MVT::i32, 0, |
| 16481 | /* 32279*/ OPC_EmitInteger, MVT::i64, 0, |
| 16482 | /* 32282*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16483 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16484 | // Src: (ld:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 16485 | // Dst: (LOAD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16486 | /* 32291*/ /*SwitchType*/ 18, MVT::i64,// ->32311 |
| 16487 | /* 32293*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16488 | /* 32295*/ OPC_EmitMergeInputChains1_0, |
| 16489 | /* 32296*/ OPC_EmitInteger, MVT::i32, 0, |
| 16490 | /* 32299*/ OPC_EmitInteger, MVT::i64, 0, |
| 16491 | /* 32302*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16492 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16493 | // Src: (ld:{ *:[i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 16494 | // Dst: (LOAD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16495 | /* 32311*/ 0, // EndSwitchType |
| 16496 | /* 32312*/ /*Scope*/ 24, /*->32337*/ |
| 16497 | /* 32313*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 16498 | /* 32315*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 16499 | /* 32317*/ OPC_CheckType, MVT::i32, |
| 16500 | /* 32319*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16501 | /* 32321*/ OPC_EmitMergeInputChains1_0, |
| 16502 | /* 32322*/ OPC_EmitInteger, MVT::i32, 0, |
| 16503 | /* 32325*/ OPC_EmitInteger, MVT::i64, 0, |
| 16504 | /* 32328*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16505 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16506 | // Src: (ld:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 4 |
| 16507 | // Dst: (LOAD8_S_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16508 | /* 32337*/ /*Scope*/ 24, /*->32362*/ |
| 16509 | /* 32338*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 16510 | /* 32340*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 16511 | /* 32342*/ OPC_CheckType, MVT::i32, |
| 16512 | /* 32344*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16513 | /* 32346*/ OPC_EmitMergeInputChains1_0, |
| 16514 | /* 32347*/ OPC_EmitInteger, MVT::i32, 0, |
| 16515 | /* 32350*/ OPC_EmitInteger, MVT::i64, 0, |
| 16516 | /* 32353*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16517 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16518 | // Src: (ld:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 4 |
| 16519 | // Dst: (LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16520 | /* 32362*/ /*Scope*/ 24, /*->32387*/ |
| 16521 | /* 32363*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 16522 | /* 32365*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 16523 | /* 32367*/ OPC_CheckType, MVT::i32, |
| 16524 | /* 32369*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16525 | /* 32371*/ OPC_EmitMergeInputChains1_0, |
| 16526 | /* 32372*/ OPC_EmitInteger, MVT::i32, 0, |
| 16527 | /* 32375*/ OPC_EmitInteger, MVT::i64, 0, |
| 16528 | /* 32378*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16529 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16530 | // Src: (ld:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 4 |
| 16531 | // Dst: (LOAD16_S_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16532 | /* 32387*/ /*Scope*/ 24, /*->32412*/ |
| 16533 | /* 32388*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 16534 | /* 32390*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 16535 | /* 32392*/ OPC_CheckType, MVT::i32, |
| 16536 | /* 32394*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16537 | /* 32396*/ OPC_EmitMergeInputChains1_0, |
| 16538 | /* 32397*/ OPC_EmitInteger, MVT::i32, 0, |
| 16539 | /* 32400*/ OPC_EmitInteger, MVT::i64, 0, |
| 16540 | /* 32403*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16541 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16542 | // Src: (ld:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 4 |
| 16543 | // Dst: (LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16544 | /* 32412*/ /*Scope*/ 24, /*->32437*/ |
| 16545 | /* 32413*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 16546 | /* 32415*/ OPC_CheckPredicate, 1, // Predicate_sextloadi8 |
| 16547 | /* 32417*/ OPC_CheckType, MVT::i64, |
| 16548 | /* 32419*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16549 | /* 32421*/ OPC_EmitMergeInputChains1_0, |
| 16550 | /* 32422*/ OPC_EmitInteger, MVT::i32, 0, |
| 16551 | /* 32425*/ OPC_EmitInteger, MVT::i64, 0, |
| 16552 | /* 32428*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16553 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16554 | // Src: (ld:{ *:[i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>> - Complexity = 4 |
| 16555 | // Dst: (LOAD8_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16556 | /* 32437*/ /*Scope*/ 24, /*->32462*/ |
| 16557 | /* 32438*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 16558 | /* 32440*/ OPC_CheckPredicate, 1, // Predicate_zextloadi8 |
| 16559 | /* 32442*/ OPC_CheckType, MVT::i64, |
| 16560 | /* 32444*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16561 | /* 32446*/ OPC_EmitMergeInputChains1_0, |
| 16562 | /* 32447*/ OPC_EmitInteger, MVT::i32, 0, |
| 16563 | /* 32450*/ OPC_EmitInteger, MVT::i64, 0, |
| 16564 | /* 32453*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16565 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16566 | // Src: (ld:{ *:[i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 4 |
| 16567 | // Dst: (LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16568 | /* 32462*/ /*Scope*/ 24, /*->32487*/ |
| 16569 | /* 32463*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 16570 | /* 32465*/ OPC_CheckPredicate, 2, // Predicate_sextloadi16 |
| 16571 | /* 32467*/ OPC_CheckType, MVT::i64, |
| 16572 | /* 32469*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16573 | /* 32471*/ OPC_EmitMergeInputChains1_0, |
| 16574 | /* 32472*/ OPC_EmitInteger, MVT::i32, 0, |
| 16575 | /* 32475*/ OPC_EmitInteger, MVT::i64, 0, |
| 16576 | /* 32478*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16577 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16578 | // Src: (ld:{ *:[i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> - Complexity = 4 |
| 16579 | // Dst: (LOAD16_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16580 | /* 32487*/ /*Scope*/ 24, /*->32512*/ |
| 16581 | /* 32488*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 16582 | /* 32490*/ OPC_CheckPredicate, 2, // Predicate_zextloadi16 |
| 16583 | /* 32492*/ OPC_CheckType, MVT::i64, |
| 16584 | /* 32494*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16585 | /* 32496*/ OPC_EmitMergeInputChains1_0, |
| 16586 | /* 32497*/ OPC_EmitInteger, MVT::i32, 0, |
| 16587 | /* 32500*/ OPC_EmitInteger, MVT::i64, 0, |
| 16588 | /* 32503*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16589 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16590 | // Src: (ld:{ *:[i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi16>> - Complexity = 4 |
| 16591 | // Dst: (LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16592 | /* 32512*/ /*Scope*/ 24, /*->32537*/ |
| 16593 | /* 32513*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 16594 | /* 32515*/ OPC_CheckPredicate, 6, // Predicate_sextloadi32 |
| 16595 | /* 32517*/ OPC_CheckType, MVT::i64, |
| 16596 | /* 32519*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16597 | /* 32521*/ OPC_EmitMergeInputChains1_0, |
| 16598 | /* 32522*/ OPC_EmitInteger, MVT::i32, 0, |
| 16599 | /* 32525*/ OPC_EmitInteger, MVT::i64, 0, |
| 16600 | /* 32528*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16601 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16602 | // Src: (ld:{ *:[i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi32>> - Complexity = 4 |
| 16603 | // Dst: (LOAD32_S_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16604 | /* 32537*/ /*Scope*/ 24, /*->32562*/ |
| 16605 | /* 32538*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 16606 | /* 32540*/ OPC_CheckPredicate, 6, // Predicate_zextloadi32 |
| 16607 | /* 32542*/ OPC_CheckType, MVT::i64, |
| 16608 | /* 32544*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16609 | /* 32546*/ OPC_EmitMergeInputChains1_0, |
| 16610 | /* 32547*/ OPC_EmitInteger, MVT::i32, 0, |
| 16611 | /* 32550*/ OPC_EmitInteger, MVT::i64, 0, |
| 16612 | /* 32553*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16613 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16614 | // Src: (ld:{ *:[i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi32>> - Complexity = 4 |
| 16615 | // Dst: (LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16616 | /* 32562*/ /*Scope*/ 117, /*->32680*/ |
| 16617 | /* 32563*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 16618 | /* 32565*/ OPC_SwitchType /*2 cases */, 44, MVT::i32,// ->32612 |
| 16619 | /* 32568*/ OPC_Scope, 20, /*->32590*/ // 2 children in Scope |
| 16620 | /* 32570*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 16621 | /* 32572*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16622 | /* 32574*/ OPC_EmitMergeInputChains1_0, |
| 16623 | /* 32575*/ OPC_EmitInteger, MVT::i32, 0, |
| 16624 | /* 32578*/ OPC_EmitInteger, MVT::i64, 0, |
| 16625 | /* 32581*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16626 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16627 | // Src: (ld:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 4 |
| 16628 | // Dst: (LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16629 | /* 32590*/ /*Scope*/ 20, /*->32611*/ |
| 16630 | /* 32591*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 16631 | /* 32593*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16632 | /* 32595*/ OPC_EmitMergeInputChains1_0, |
| 16633 | /* 32596*/ OPC_EmitInteger, MVT::i32, 0, |
| 16634 | /* 32599*/ OPC_EmitInteger, MVT::i64, 0, |
| 16635 | /* 32602*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16636 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 16637 | // Src: (ld:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 4 |
| 16638 | // Dst: (LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16639 | /* 32611*/ 0, /*End of Scope*/ |
| 16640 | /* 32612*/ /*SwitchType*/ 65, MVT::i64,// ->32679 |
| 16641 | /* 32614*/ OPC_Scope, 20, /*->32636*/ // 3 children in Scope |
| 16642 | /* 32616*/ OPC_CheckPredicate, 1, // Predicate_extloadi8 |
| 16643 | /* 32618*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16644 | /* 32620*/ OPC_EmitMergeInputChains1_0, |
| 16645 | /* 32621*/ OPC_EmitInteger, MVT::i32, 0, |
| 16646 | /* 32624*/ OPC_EmitInteger, MVT::i64, 0, |
| 16647 | /* 32627*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16648 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16649 | // Src: (ld:{ *:[i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 4 |
| 16650 | // Dst: (LOAD8_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16651 | /* 32636*/ /*Scope*/ 20, /*->32657*/ |
| 16652 | /* 32637*/ OPC_CheckPredicate, 2, // Predicate_extloadi16 |
| 16653 | /* 32639*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16654 | /* 32641*/ OPC_EmitMergeInputChains1_0, |
| 16655 | /* 32642*/ OPC_EmitInteger, MVT::i32, 0, |
| 16656 | /* 32645*/ OPC_EmitInteger, MVT::i64, 0, |
| 16657 | /* 32648*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16658 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16659 | // Src: (ld:{ *:[i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi16>> - Complexity = 4 |
| 16660 | // Dst: (LOAD16_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16661 | /* 32657*/ /*Scope*/ 20, /*->32678*/ |
| 16662 | /* 32658*/ OPC_CheckPredicate, 6, // Predicate_extloadi32 |
| 16663 | /* 32660*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16664 | /* 32662*/ OPC_EmitMergeInputChains1_0, |
| 16665 | /* 32663*/ OPC_EmitInteger, MVT::i32, 0, |
| 16666 | /* 32666*/ OPC_EmitInteger, MVT::i64, 0, |
| 16667 | /* 32669*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16668 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 16669 | // Src: (ld:{ *:[i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi32>> - Complexity = 4 |
| 16670 | // Dst: (LOAD32_U_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16671 | /* 32678*/ 0, /*End of Scope*/ |
| 16672 | /* 32679*/ 0, // EndSwitchType |
| 16673 | /* 32680*/ 0, /*End of Scope*/ |
| 16674 | /* 32681*/ 0, /*End of Scope*/ |
| 16675 | /* 32682*/ /*Scope*/ 91|128,2/*347*/, /*->33031*/ |
| 16676 | /* 32684*/ OPC_MoveChild1, |
| 16677 | /* 32685*/ OPC_SwitchOpcode /*3 cases */, 105, TARGET_VAL(ISD::ADD),// ->32794 |
| 16678 | /* 32689*/ OPC_RecordChild0, // #1 = $addr |
| 16679 | /* 32690*/ OPC_RecordChild1, // #2 = $off |
| 16680 | /* 32691*/ OPC_MoveChild1, |
| 16681 | /* 32692*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 16682 | /* 32695*/ OPC_MoveParent, |
| 16683 | /* 32696*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 16684 | /* 32698*/ OPC_SwitchType /*2 cases */, 45, MVT::i32,// ->32746 |
| 16685 | /* 32701*/ OPC_MoveParent, |
| 16686 | /* 32702*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 16687 | /* 32704*/ OPC_CheckPredicate, 11, // Predicate_load |
| 16688 | /* 32706*/ OPC_SwitchType /*2 cases */, 17, MVT::f32,// ->32726 |
| 16689 | /* 32709*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16690 | /* 32711*/ OPC_EmitMergeInputChains1_0, |
| 16691 | /* 32712*/ OPC_EmitInteger, MVT::i32, 0, |
| 16692 | /* 32715*/ OPC_EmitConvertToTarget, 2, |
| 16693 | /* 32717*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16694 | MVT::f32, 3/*#Ops*/, 3, 4, 1, |
| 16695 | // Src: (ld:{ *:[f32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 16696 | // Dst: (LOAD_F32_A32:{ *:[f32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 16697 | /* 32726*/ /*SwitchType*/ 17, MVT::f64,// ->32745 |
| 16698 | /* 32728*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16699 | /* 32730*/ OPC_EmitMergeInputChains1_0, |
| 16700 | /* 32731*/ OPC_EmitInteger, MVT::i32, 0, |
| 16701 | /* 32734*/ OPC_EmitConvertToTarget, 2, |
| 16702 | /* 32736*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16703 | MVT::f64, 3/*#Ops*/, 3, 4, 1, |
| 16704 | // Src: (ld:{ *:[f64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 16705 | // Dst: (LOAD_F64_A32:{ *:[f64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 16706 | /* 32745*/ 0, // EndSwitchType |
| 16707 | /* 32746*/ /*SwitchType*/ 45, MVT::i64,// ->32793 |
| 16708 | /* 32748*/ OPC_MoveParent, |
| 16709 | /* 32749*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 16710 | /* 32751*/ OPC_CheckPredicate, 11, // Predicate_load |
| 16711 | /* 32753*/ OPC_SwitchType /*2 cases */, 17, MVT::f32,// ->32773 |
| 16712 | /* 32756*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16713 | /* 32758*/ OPC_EmitMergeInputChains1_0, |
| 16714 | /* 32759*/ OPC_EmitInteger, MVT::i32, 0, |
| 16715 | /* 32762*/ OPC_EmitConvertToTarget, 2, |
| 16716 | /* 32764*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16717 | MVT::f32, 3/*#Ops*/, 3, 4, 1, |
| 16718 | // Src: (ld:{ *:[f32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 16719 | // Dst: (LOAD_F32_A64:{ *:[f32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 16720 | /* 32773*/ /*SwitchType*/ 17, MVT::f64,// ->32792 |
| 16721 | /* 32775*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16722 | /* 32777*/ OPC_EmitMergeInputChains1_0, |
| 16723 | /* 32778*/ OPC_EmitInteger, MVT::i32, 0, |
| 16724 | /* 32781*/ OPC_EmitConvertToTarget, 2, |
| 16725 | /* 32783*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16726 | MVT::f64, 3/*#Ops*/, 3, 4, 1, |
| 16727 | // Src: (ld:{ *:[f64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 16728 | // Dst: (LOAD_F64_A64:{ *:[f64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 16729 | /* 32792*/ 0, // EndSwitchType |
| 16730 | /* 32793*/ 0, // EndSwitchType |
| 16731 | /* 32794*/ /*SwitchOpcode*/ 105, TARGET_VAL(ISD::OR),// ->32902 |
| 16732 | /* 32797*/ OPC_RecordChild0, // #1 = $addr |
| 16733 | /* 32798*/ OPC_RecordChild1, // #2 = $off |
| 16734 | /* 32799*/ OPC_MoveChild1, |
| 16735 | /* 32800*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 16736 | /* 32803*/ OPC_MoveParent, |
| 16737 | /* 32804*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 16738 | /* 32806*/ OPC_SwitchType /*2 cases */, 45, MVT::i32,// ->32854 |
| 16739 | /* 32809*/ OPC_MoveParent, |
| 16740 | /* 32810*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 16741 | /* 32812*/ OPC_CheckPredicate, 11, // Predicate_load |
| 16742 | /* 32814*/ OPC_SwitchType /*2 cases */, 17, MVT::f32,// ->32834 |
| 16743 | /* 32817*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16744 | /* 32819*/ OPC_EmitMergeInputChains1_0, |
| 16745 | /* 32820*/ OPC_EmitInteger, MVT::i32, 0, |
| 16746 | /* 32823*/ OPC_EmitConvertToTarget, 2, |
| 16747 | /* 32825*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16748 | MVT::f32, 3/*#Ops*/, 3, 4, 1, |
| 16749 | // Src: (ld:{ *:[f32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 16750 | // Dst: (LOAD_F32_A32:{ *:[f32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 16751 | /* 32834*/ /*SwitchType*/ 17, MVT::f64,// ->32853 |
| 16752 | /* 32836*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16753 | /* 32838*/ OPC_EmitMergeInputChains1_0, |
| 16754 | /* 32839*/ OPC_EmitInteger, MVT::i32, 0, |
| 16755 | /* 32842*/ OPC_EmitConvertToTarget, 2, |
| 16756 | /* 32844*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16757 | MVT::f64, 3/*#Ops*/, 3, 4, 1, |
| 16758 | // Src: (ld:{ *:[f64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 16759 | // Dst: (LOAD_F64_A32:{ *:[f64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 16760 | /* 32853*/ 0, // EndSwitchType |
| 16761 | /* 32854*/ /*SwitchType*/ 45, MVT::i64,// ->32901 |
| 16762 | /* 32856*/ OPC_MoveParent, |
| 16763 | /* 32857*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 16764 | /* 32859*/ OPC_CheckPredicate, 11, // Predicate_load |
| 16765 | /* 32861*/ OPC_SwitchType /*2 cases */, 17, MVT::f32,// ->32881 |
| 16766 | /* 32864*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16767 | /* 32866*/ OPC_EmitMergeInputChains1_0, |
| 16768 | /* 32867*/ OPC_EmitInteger, MVT::i32, 0, |
| 16769 | /* 32870*/ OPC_EmitConvertToTarget, 2, |
| 16770 | /* 32872*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16771 | MVT::f32, 3/*#Ops*/, 3, 4, 1, |
| 16772 | // Src: (ld:{ *:[f32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 16773 | // Dst: (LOAD_F32_A64:{ *:[f32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 16774 | /* 32881*/ /*SwitchType*/ 17, MVT::f64,// ->32900 |
| 16775 | /* 32883*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16776 | /* 32885*/ OPC_EmitMergeInputChains1_0, |
| 16777 | /* 32886*/ OPC_EmitInteger, MVT::i32, 0, |
| 16778 | /* 32889*/ OPC_EmitConvertToTarget, 2, |
| 16779 | /* 32891*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16780 | MVT::f64, 3/*#Ops*/, 3, 4, 1, |
| 16781 | // Src: (ld:{ *:[f64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 16782 | // Dst: (LOAD_F64_A64:{ *:[f64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 16783 | /* 32900*/ 0, // EndSwitchType |
| 16784 | /* 32901*/ 0, // EndSwitchType |
| 16785 | /* 32902*/ /*SwitchOpcode*/ 125, TARGET_VAL(WebAssemblyISD::Wrapper),// ->33030 |
| 16786 | /* 32905*/ OPC_RecordChild0, // #1 = $off |
| 16787 | /* 32906*/ OPC_MoveChild0, |
| 16788 | /* 32907*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 16789 | /* 32910*/ OPC_MoveParent, |
| 16790 | /* 32911*/ OPC_MoveParent, |
| 16791 | /* 32912*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 16792 | /* 32914*/ OPC_CheckPredicate, 11, // Predicate_load |
| 16793 | /* 32916*/ OPC_SwitchType /*2 cases */, 54, MVT::f32,// ->32973 |
| 16794 | /* 32919*/ OPC_Scope, 25, /*->32946*/ // 2 children in Scope |
| 16795 | /* 32921*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 16796 | /* 32923*/ OPC_EmitMergeInputChains1_0, |
| 16797 | /* 32924*/ OPC_EmitInteger, MVT::i32, 0, |
| 16798 | /* 32927*/ OPC_EmitInteger, MVT::i32, 0, |
| 16799 | /* 32930*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16800 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 16801 | /* 32937*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16802 | MVT::f32, 3/*#Ops*/, 2, 1, 4, |
| 16803 | // Src: (ld:{ *:[f32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 16804 | // Dst: (LOAD_F32_A32:{ *:[f32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16805 | /* 32946*/ /*Scope*/ 25, /*->32972*/ |
| 16806 | /* 32947*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 16807 | /* 32949*/ OPC_EmitMergeInputChains1_0, |
| 16808 | /* 32950*/ OPC_EmitInteger, MVT::i32, 0, |
| 16809 | /* 32953*/ OPC_EmitInteger, MVT::i64, 0, |
| 16810 | /* 32956*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16811 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 16812 | /* 32963*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16813 | MVT::f32, 3/*#Ops*/, 2, 1, 4, |
| 16814 | // Src: (ld:{ *:[f32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 16815 | // Dst: (LOAD_F32_A64:{ *:[f32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16816 | /* 32972*/ 0, /*End of Scope*/ |
| 16817 | /* 32973*/ /*SwitchType*/ 54, MVT::f64,// ->33029 |
| 16818 | /* 32975*/ OPC_Scope, 25, /*->33002*/ // 2 children in Scope |
| 16819 | /* 32977*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 16820 | /* 32979*/ OPC_EmitMergeInputChains1_0, |
| 16821 | /* 32980*/ OPC_EmitInteger, MVT::i32, 0, |
| 16822 | /* 32983*/ OPC_EmitInteger, MVT::i32, 0, |
| 16823 | /* 32986*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16824 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 16825 | /* 32993*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16826 | MVT::f64, 3/*#Ops*/, 2, 1, 4, |
| 16827 | // Src: (ld:{ *:[f64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 16828 | // Dst: (LOAD_F64_A32:{ *:[f64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16829 | /* 33002*/ /*Scope*/ 25, /*->33028*/ |
| 16830 | /* 33003*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 16831 | /* 33005*/ OPC_EmitMergeInputChains1_0, |
| 16832 | /* 33006*/ OPC_EmitInteger, MVT::i32, 0, |
| 16833 | /* 33009*/ OPC_EmitInteger, MVT::i64, 0, |
| 16834 | /* 33012*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16835 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 16836 | /* 33019*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16837 | MVT::f64, 3/*#Ops*/, 2, 1, 4, |
| 16838 | // Src: (ld:{ *:[f64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 16839 | // Dst: (LOAD_F64_A64:{ *:[f64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16840 | /* 33028*/ 0, /*End of Scope*/ |
| 16841 | /* 33029*/ 0, // EndSwitchType |
| 16842 | /* 33030*/ 0, // EndSwitchOpcode |
| 16843 | /* 33031*/ /*Scope*/ 106|128,1/*234*/, /*->33267*/ |
| 16844 | /* 33033*/ OPC_RecordChild1, // #1 = $off |
| 16845 | /* 33034*/ OPC_Scope, 3|128,1/*131*/, /*->33168*/ // 3 children in Scope |
| 16846 | /* 33037*/ OPC_MoveChild1, |
| 16847 | /* 33038*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 16848 | /* 33041*/ OPC_MoveParent, |
| 16849 | /* 33042*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 16850 | /* 33044*/ OPC_CheckPredicate, 11, // Predicate_load |
| 16851 | /* 33046*/ OPC_SwitchType /*2 cases */, 58, MVT::f32,// ->33107 |
| 16852 | /* 33049*/ OPC_Scope, 27, /*->33078*/ // 2 children in Scope |
| 16853 | /* 33051*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16854 | /* 33053*/ OPC_EmitMergeInputChains1_0, |
| 16855 | /* 33054*/ OPC_EmitInteger, MVT::i32, 0, |
| 16856 | /* 33057*/ OPC_EmitConvertToTarget, 1, |
| 16857 | /* 33059*/ OPC_EmitInteger, MVT::i32, 0, |
| 16858 | /* 33062*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16859 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 16860 | /* 33069*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16861 | MVT::f32, 3/*#Ops*/, 2, 3, 5, |
| 16862 | // Src: (ld:{ *:[f32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 16863 | // Dst: (LOAD_F32_A32:{ *:[f32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16864 | /* 33078*/ /*Scope*/ 27, /*->33106*/ |
| 16865 | /* 33079*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16866 | /* 33081*/ OPC_EmitMergeInputChains1_0, |
| 16867 | /* 33082*/ OPC_EmitInteger, MVT::i32, 0, |
| 16868 | /* 33085*/ OPC_EmitConvertToTarget, 1, |
| 16869 | /* 33087*/ OPC_EmitInteger, MVT::i64, 0, |
| 16870 | /* 33090*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16871 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 16872 | /* 33097*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16873 | MVT::f32, 3/*#Ops*/, 2, 3, 5, |
| 16874 | // Src: (ld:{ *:[f32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 16875 | // Dst: (LOAD_F32_A64:{ *:[f32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16876 | /* 33106*/ 0, /*End of Scope*/ |
| 16877 | /* 33107*/ /*SwitchType*/ 58, MVT::f64,// ->33167 |
| 16878 | /* 33109*/ OPC_Scope, 27, /*->33138*/ // 2 children in Scope |
| 16879 | /* 33111*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16880 | /* 33113*/ OPC_EmitMergeInputChains1_0, |
| 16881 | /* 33114*/ OPC_EmitInteger, MVT::i32, 0, |
| 16882 | /* 33117*/ OPC_EmitConvertToTarget, 1, |
| 16883 | /* 33119*/ OPC_EmitInteger, MVT::i32, 0, |
| 16884 | /* 33122*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 16885 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 16886 | /* 33129*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16887 | MVT::f64, 3/*#Ops*/, 2, 3, 5, |
| 16888 | // Src: (ld:{ *:[f64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 16889 | // Dst: (LOAD_F64_A32:{ *:[f64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 16890 | /* 33138*/ /*Scope*/ 27, /*->33166*/ |
| 16891 | /* 33139*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16892 | /* 33141*/ OPC_EmitMergeInputChains1_0, |
| 16893 | /* 33142*/ OPC_EmitInteger, MVT::i32, 0, |
| 16894 | /* 33145*/ OPC_EmitConvertToTarget, 1, |
| 16895 | /* 33147*/ OPC_EmitInteger, MVT::i64, 0, |
| 16896 | /* 33150*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 16897 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 16898 | /* 33157*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16899 | MVT::f64, 3/*#Ops*/, 2, 3, 5, |
| 16900 | // Src: (ld:{ *:[f64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 16901 | // Dst: (LOAD_F64_A64:{ *:[f64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 16902 | /* 33166*/ 0, /*End of Scope*/ |
| 16903 | /* 33167*/ 0, // EndSwitchType |
| 16904 | /* 33168*/ /*Scope*/ 48, /*->33217*/ |
| 16905 | /* 33169*/ OPC_CheckChild1Type, MVT::i32, |
| 16906 | /* 33171*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 16907 | /* 33173*/ OPC_CheckPredicate, 11, // Predicate_load |
| 16908 | /* 33175*/ OPC_SwitchType /*2 cases */, 18, MVT::f32,// ->33196 |
| 16909 | /* 33178*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16910 | /* 33180*/ OPC_EmitMergeInputChains1_0, |
| 16911 | /* 33181*/ OPC_EmitInteger, MVT::i32, 0, |
| 16912 | /* 33184*/ OPC_EmitInteger, MVT::i32, 0, |
| 16913 | /* 33187*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16914 | MVT::f32, 3/*#Ops*/, 2, 3, 1, |
| 16915 | // Src: (ld:{ *:[f32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 16916 | // Dst: (LOAD_F32_A32:{ *:[f32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16917 | /* 33196*/ /*SwitchType*/ 18, MVT::f64,// ->33216 |
| 16918 | /* 33198*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16919 | /* 33200*/ OPC_EmitMergeInputChains1_0, |
| 16920 | /* 33201*/ OPC_EmitInteger, MVT::i32, 0, |
| 16921 | /* 33204*/ OPC_EmitInteger, MVT::i32, 0, |
| 16922 | /* 33207*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16923 | MVT::f64, 3/*#Ops*/, 2, 3, 1, |
| 16924 | // Src: (ld:{ *:[f64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 16925 | // Dst: (LOAD_F64_A32:{ *:[f64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 16926 | /* 33216*/ 0, // EndSwitchType |
| 16927 | /* 33217*/ /*Scope*/ 48, /*->33266*/ |
| 16928 | /* 33218*/ OPC_CheckChild1Type, MVT::i64, |
| 16929 | /* 33220*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 16930 | /* 33222*/ OPC_CheckPredicate, 11, // Predicate_load |
| 16931 | /* 33224*/ OPC_SwitchType /*2 cases */, 18, MVT::f32,// ->33245 |
| 16932 | /* 33227*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16933 | /* 33229*/ OPC_EmitMergeInputChains1_0, |
| 16934 | /* 33230*/ OPC_EmitInteger, MVT::i32, 0, |
| 16935 | /* 33233*/ OPC_EmitInteger, MVT::i64, 0, |
| 16936 | /* 33236*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16937 | MVT::f32, 3/*#Ops*/, 2, 3, 1, |
| 16938 | // Src: (ld:{ *:[f32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 16939 | // Dst: (LOAD_F32_A64:{ *:[f32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16940 | /* 33245*/ /*SwitchType*/ 18, MVT::f64,// ->33265 |
| 16941 | /* 33247*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 16942 | /* 33249*/ OPC_EmitMergeInputChains1_0, |
| 16943 | /* 33250*/ OPC_EmitInteger, MVT::i32, 0, |
| 16944 | /* 33253*/ OPC_EmitInteger, MVT::i64, 0, |
| 16945 | /* 33256*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 16946 | MVT::f64, 3/*#Ops*/, 2, 3, 1, |
| 16947 | // Src: (ld:{ *:[f64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 16948 | // Dst: (LOAD_F64_A64:{ *:[f64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 16949 | /* 33265*/ 0, // EndSwitchType |
| 16950 | /* 33266*/ 0, /*End of Scope*/ |
| 16951 | /* 33267*/ /*Scope*/ 127|128,15/*2047*/, /*->35316*/ |
| 16952 | /* 33269*/ OPC_MoveChild1, |
| 16953 | /* 33270*/ OPC_SwitchOpcode /*3 cases */, 109|128,4/*621*/, TARGET_VAL(ISD::ADD),// ->33896 |
| 16954 | /* 33275*/ OPC_RecordChild0, // #1 = $addr |
| 16955 | /* 33276*/ OPC_RecordChild1, // #2 = $off |
| 16956 | /* 33277*/ OPC_MoveChild1, |
| 16957 | /* 33278*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 16958 | /* 33281*/ OPC_MoveParent, |
| 16959 | /* 33282*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 16960 | /* 33284*/ OPC_SwitchType /*2 cases */, 46|128,2/*302*/, MVT::i32,// ->33590 |
| 16961 | /* 33288*/ OPC_MoveParent, |
| 16962 | /* 33289*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 16963 | /* 33291*/ OPC_Scope, 80, /*->33373*/ // 10 children in Scope |
| 16964 | /* 33293*/ OPC_CheckPredicate, 11, // Predicate_load |
| 16965 | /* 33295*/ OPC_SwitchType /*4 cases */, 17, MVT::v16i8,// ->33315 |
| 16966 | /* 33298*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16967 | /* 33300*/ OPC_EmitMergeInputChains1_0, |
| 16968 | /* 33301*/ OPC_EmitInteger, MVT::i32, 0, |
| 16969 | /* 33304*/ OPC_EmitConvertToTarget, 2, |
| 16970 | /* 33306*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16971 | MVT::v16i8, 3/*#Ops*/, 3, 4, 1, |
| 16972 | // Src: (ld:{ *:[v16i8] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 16973 | // Dst: (LOAD_V128_A32:{ *:[v16i8] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 16974 | /* 33315*/ /*SwitchType*/ 17, MVT::v8i16,// ->33334 |
| 16975 | /* 33317*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16976 | /* 33319*/ OPC_EmitMergeInputChains1_0, |
| 16977 | /* 33320*/ OPC_EmitInteger, MVT::i32, 0, |
| 16978 | /* 33323*/ OPC_EmitConvertToTarget, 2, |
| 16979 | /* 33325*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16980 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 16981 | // Src: (ld:{ *:[v8i16] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 16982 | // Dst: (LOAD_V128_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 16983 | /* 33334*/ /*SwitchType*/ 17, MVT::v4i32,// ->33353 |
| 16984 | /* 33336*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16985 | /* 33338*/ OPC_EmitMergeInputChains1_0, |
| 16986 | /* 33339*/ OPC_EmitInteger, MVT::i32, 0, |
| 16987 | /* 33342*/ OPC_EmitConvertToTarget, 2, |
| 16988 | /* 33344*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16989 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 16990 | // Src: (ld:{ *:[v4i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 16991 | // Dst: (LOAD_V128_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 16992 | /* 33353*/ /*SwitchType*/ 17, MVT::v2i64,// ->33372 |
| 16993 | /* 33355*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 16994 | /* 33357*/ OPC_EmitMergeInputChains1_0, |
| 16995 | /* 33358*/ OPC_EmitInteger, MVT::i32, 0, |
| 16996 | /* 33361*/ OPC_EmitConvertToTarget, 2, |
| 16997 | /* 33363*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 16998 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 16999 | // Src: (ld:{ *:[v2i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17000 | // Dst: (LOAD_V128_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17001 | /* 33372*/ 0, // EndSwitchType |
| 17002 | /* 33373*/ /*Scope*/ 23, /*->33397*/ |
| 17003 | /* 33374*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17004 | /* 33376*/ OPC_CheckPredicate, 15, // Predicate_sextloadvi8 |
| 17005 | /* 33378*/ OPC_CheckType, MVT::v8i16, |
| 17006 | /* 33380*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17007 | /* 33382*/ OPC_EmitMergeInputChains1_0, |
| 17008 | /* 33383*/ OPC_EmitInteger, MVT::i32, 0, |
| 17009 | /* 33386*/ OPC_EmitConvertToTarget, 2, |
| 17010 | /* 33388*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17011 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17012 | // Src: (ld:{ *:[v8i16] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi8>> - Complexity = 11 |
| 17013 | // Dst: (LOAD_EXTEND_S_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17014 | /* 33397*/ /*Scope*/ 23, /*->33421*/ |
| 17015 | /* 33398*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17016 | /* 33400*/ OPC_CheckPredicate, 15, // Predicate_zextloadvi8 |
| 17017 | /* 33402*/ OPC_CheckType, MVT::v8i16, |
| 17018 | /* 33404*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17019 | /* 33406*/ OPC_EmitMergeInputChains1_0, |
| 17020 | /* 33407*/ OPC_EmitInteger, MVT::i32, 0, |
| 17021 | /* 33410*/ OPC_EmitConvertToTarget, 2, |
| 17022 | /* 33412*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17023 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17024 | // Src: (ld:{ *:[v8i16] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi8>> - Complexity = 11 |
| 17025 | // Dst: (LOAD_EXTEND_U_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17026 | /* 33421*/ /*Scope*/ 23, /*->33445*/ |
| 17027 | /* 33422*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17028 | /* 33424*/ OPC_CheckPredicate, 15, // Predicate_extloadvi8 |
| 17029 | /* 33426*/ OPC_CheckType, MVT::v8i16, |
| 17030 | /* 33428*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17031 | /* 33430*/ OPC_EmitMergeInputChains1_0, |
| 17032 | /* 33431*/ OPC_EmitInteger, MVT::i32, 0, |
| 17033 | /* 33434*/ OPC_EmitConvertToTarget, 2, |
| 17034 | /* 33436*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17035 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17036 | // Src: (ld:{ *:[v8i16] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi8>> - Complexity = 11 |
| 17037 | // Dst: (LOAD_EXTEND_U_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17038 | /* 33445*/ /*Scope*/ 23, /*->33469*/ |
| 17039 | /* 33446*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17040 | /* 33448*/ OPC_CheckPredicate, 16, // Predicate_sextloadvi16 |
| 17041 | /* 33450*/ OPC_CheckType, MVT::v4i32, |
| 17042 | /* 33452*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17043 | /* 33454*/ OPC_EmitMergeInputChains1_0, |
| 17044 | /* 33455*/ OPC_EmitInteger, MVT::i32, 0, |
| 17045 | /* 33458*/ OPC_EmitConvertToTarget, 2, |
| 17046 | /* 33460*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17047 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17048 | // Src: (ld:{ *:[v4i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi16>> - Complexity = 11 |
| 17049 | // Dst: (LOAD_EXTEND_S_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17050 | /* 33469*/ /*Scope*/ 23, /*->33493*/ |
| 17051 | /* 33470*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17052 | /* 33472*/ OPC_CheckPredicate, 16, // Predicate_zextloadvi16 |
| 17053 | /* 33474*/ OPC_CheckType, MVT::v4i32, |
| 17054 | /* 33476*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17055 | /* 33478*/ OPC_EmitMergeInputChains1_0, |
| 17056 | /* 33479*/ OPC_EmitInteger, MVT::i32, 0, |
| 17057 | /* 33482*/ OPC_EmitConvertToTarget, 2, |
| 17058 | /* 33484*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17059 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17060 | // Src: (ld:{ *:[v4i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi16>> - Complexity = 11 |
| 17061 | // Dst: (LOAD_EXTEND_U_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17062 | /* 33493*/ /*Scope*/ 23, /*->33517*/ |
| 17063 | /* 33494*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17064 | /* 33496*/ OPC_CheckPredicate, 16, // Predicate_extloadvi16 |
| 17065 | /* 33498*/ OPC_CheckType, MVT::v4i32, |
| 17066 | /* 33500*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17067 | /* 33502*/ OPC_EmitMergeInputChains1_0, |
| 17068 | /* 33503*/ OPC_EmitInteger, MVT::i32, 0, |
| 17069 | /* 33506*/ OPC_EmitConvertToTarget, 2, |
| 17070 | /* 33508*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17071 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17072 | // Src: (ld:{ *:[v4i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi16>> - Complexity = 11 |
| 17073 | // Dst: (LOAD_EXTEND_U_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17074 | /* 33517*/ /*Scope*/ 23, /*->33541*/ |
| 17075 | /* 33518*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17076 | /* 33520*/ OPC_CheckPredicate, 17, // Predicate_sextloadvi32 |
| 17077 | /* 33522*/ OPC_CheckType, MVT::v2i64, |
| 17078 | /* 33524*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17079 | /* 33526*/ OPC_EmitMergeInputChains1_0, |
| 17080 | /* 33527*/ OPC_EmitInteger, MVT::i32, 0, |
| 17081 | /* 33530*/ OPC_EmitConvertToTarget, 2, |
| 17082 | /* 33532*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17083 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17084 | // Src: (ld:{ *:[v2i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi32>> - Complexity = 11 |
| 17085 | // Dst: (LOAD_EXTEND_S_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17086 | /* 33541*/ /*Scope*/ 23, /*->33565*/ |
| 17087 | /* 33542*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17088 | /* 33544*/ OPC_CheckPredicate, 17, // Predicate_zextloadvi32 |
| 17089 | /* 33546*/ OPC_CheckType, MVT::v2i64, |
| 17090 | /* 33548*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17091 | /* 33550*/ OPC_EmitMergeInputChains1_0, |
| 17092 | /* 33551*/ OPC_EmitInteger, MVT::i32, 0, |
| 17093 | /* 33554*/ OPC_EmitConvertToTarget, 2, |
| 17094 | /* 33556*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17095 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17096 | // Src: (ld:{ *:[v2i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi32>> - Complexity = 11 |
| 17097 | // Dst: (LOAD_EXTEND_U_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17098 | /* 33565*/ /*Scope*/ 23, /*->33589*/ |
| 17099 | /* 33566*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17100 | /* 33568*/ OPC_CheckPredicate, 17, // Predicate_extloadvi32 |
| 17101 | /* 33570*/ OPC_CheckType, MVT::v2i64, |
| 17102 | /* 33572*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17103 | /* 33574*/ OPC_EmitMergeInputChains1_0, |
| 17104 | /* 33575*/ OPC_EmitInteger, MVT::i32, 0, |
| 17105 | /* 33578*/ OPC_EmitConvertToTarget, 2, |
| 17106 | /* 33580*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17107 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17108 | // Src: (ld:{ *:[v2i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi32>> - Complexity = 11 |
| 17109 | // Dst: (LOAD_EXTEND_U_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17110 | /* 33589*/ 0, /*End of Scope*/ |
| 17111 | /* 33590*/ /*SwitchType*/ 46|128,2/*302*/, MVT::i64,// ->33895 |
| 17112 | /* 33593*/ OPC_MoveParent, |
| 17113 | /* 33594*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 17114 | /* 33596*/ OPC_Scope, 80, /*->33678*/ // 10 children in Scope |
| 17115 | /* 33598*/ OPC_CheckPredicate, 11, // Predicate_load |
| 17116 | /* 33600*/ OPC_SwitchType /*4 cases */, 17, MVT::v16i8,// ->33620 |
| 17117 | /* 33603*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17118 | /* 33605*/ OPC_EmitMergeInputChains1_0, |
| 17119 | /* 33606*/ OPC_EmitInteger, MVT::i32, 0, |
| 17120 | /* 33609*/ OPC_EmitConvertToTarget, 2, |
| 17121 | /* 33611*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17122 | MVT::v16i8, 3/*#Ops*/, 3, 4, 1, |
| 17123 | // Src: (ld:{ *:[v16i8] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17124 | // Dst: (LOAD_V128_A64:{ *:[v16i8] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17125 | /* 33620*/ /*SwitchType*/ 17, MVT::v8i16,// ->33639 |
| 17126 | /* 33622*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17127 | /* 33624*/ OPC_EmitMergeInputChains1_0, |
| 17128 | /* 33625*/ OPC_EmitInteger, MVT::i32, 0, |
| 17129 | /* 33628*/ OPC_EmitConvertToTarget, 2, |
| 17130 | /* 33630*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17131 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17132 | // Src: (ld:{ *:[v8i16] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17133 | // Dst: (LOAD_V128_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17134 | /* 33639*/ /*SwitchType*/ 17, MVT::v4i32,// ->33658 |
| 17135 | /* 33641*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17136 | /* 33643*/ OPC_EmitMergeInputChains1_0, |
| 17137 | /* 33644*/ OPC_EmitInteger, MVT::i32, 0, |
| 17138 | /* 33647*/ OPC_EmitConvertToTarget, 2, |
| 17139 | /* 33649*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17140 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17141 | // Src: (ld:{ *:[v4i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17142 | // Dst: (LOAD_V128_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17143 | /* 33658*/ /*SwitchType*/ 17, MVT::v2i64,// ->33677 |
| 17144 | /* 33660*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17145 | /* 33662*/ OPC_EmitMergeInputChains1_0, |
| 17146 | /* 33663*/ OPC_EmitInteger, MVT::i32, 0, |
| 17147 | /* 33666*/ OPC_EmitConvertToTarget, 2, |
| 17148 | /* 33668*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17149 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17150 | // Src: (ld:{ *:[v2i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17151 | // Dst: (LOAD_V128_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17152 | /* 33677*/ 0, // EndSwitchType |
| 17153 | /* 33678*/ /*Scope*/ 23, /*->33702*/ |
| 17154 | /* 33679*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17155 | /* 33681*/ OPC_CheckPredicate, 15, // Predicate_sextloadvi8 |
| 17156 | /* 33683*/ OPC_CheckType, MVT::v8i16, |
| 17157 | /* 33685*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17158 | /* 33687*/ OPC_EmitMergeInputChains1_0, |
| 17159 | /* 33688*/ OPC_EmitInteger, MVT::i32, 0, |
| 17160 | /* 33691*/ OPC_EmitConvertToTarget, 2, |
| 17161 | /* 33693*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17162 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17163 | // Src: (ld:{ *:[v8i16] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi8>> - Complexity = 11 |
| 17164 | // Dst: (LOAD_EXTEND_S_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17165 | /* 33702*/ /*Scope*/ 23, /*->33726*/ |
| 17166 | /* 33703*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17167 | /* 33705*/ OPC_CheckPredicate, 15, // Predicate_zextloadvi8 |
| 17168 | /* 33707*/ OPC_CheckType, MVT::v8i16, |
| 17169 | /* 33709*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17170 | /* 33711*/ OPC_EmitMergeInputChains1_0, |
| 17171 | /* 33712*/ OPC_EmitInteger, MVT::i32, 0, |
| 17172 | /* 33715*/ OPC_EmitConvertToTarget, 2, |
| 17173 | /* 33717*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17174 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17175 | // Src: (ld:{ *:[v8i16] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi8>> - Complexity = 11 |
| 17176 | // Dst: (LOAD_EXTEND_U_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17177 | /* 33726*/ /*Scope*/ 23, /*->33750*/ |
| 17178 | /* 33727*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17179 | /* 33729*/ OPC_CheckPredicate, 15, // Predicate_extloadvi8 |
| 17180 | /* 33731*/ OPC_CheckType, MVT::v8i16, |
| 17181 | /* 33733*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17182 | /* 33735*/ OPC_EmitMergeInputChains1_0, |
| 17183 | /* 33736*/ OPC_EmitInteger, MVT::i32, 0, |
| 17184 | /* 33739*/ OPC_EmitConvertToTarget, 2, |
| 17185 | /* 33741*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17186 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17187 | // Src: (ld:{ *:[v8i16] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi8>> - Complexity = 11 |
| 17188 | // Dst: (LOAD_EXTEND_U_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17189 | /* 33750*/ /*Scope*/ 23, /*->33774*/ |
| 17190 | /* 33751*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17191 | /* 33753*/ OPC_CheckPredicate, 16, // Predicate_sextloadvi16 |
| 17192 | /* 33755*/ OPC_CheckType, MVT::v4i32, |
| 17193 | /* 33757*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17194 | /* 33759*/ OPC_EmitMergeInputChains1_0, |
| 17195 | /* 33760*/ OPC_EmitInteger, MVT::i32, 0, |
| 17196 | /* 33763*/ OPC_EmitConvertToTarget, 2, |
| 17197 | /* 33765*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17198 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17199 | // Src: (ld:{ *:[v4i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi16>> - Complexity = 11 |
| 17200 | // Dst: (LOAD_EXTEND_S_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17201 | /* 33774*/ /*Scope*/ 23, /*->33798*/ |
| 17202 | /* 33775*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17203 | /* 33777*/ OPC_CheckPredicate, 16, // Predicate_zextloadvi16 |
| 17204 | /* 33779*/ OPC_CheckType, MVT::v4i32, |
| 17205 | /* 33781*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17206 | /* 33783*/ OPC_EmitMergeInputChains1_0, |
| 17207 | /* 33784*/ OPC_EmitInteger, MVT::i32, 0, |
| 17208 | /* 33787*/ OPC_EmitConvertToTarget, 2, |
| 17209 | /* 33789*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17210 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17211 | // Src: (ld:{ *:[v4i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi16>> - Complexity = 11 |
| 17212 | // Dst: (LOAD_EXTEND_U_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17213 | /* 33798*/ /*Scope*/ 23, /*->33822*/ |
| 17214 | /* 33799*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17215 | /* 33801*/ OPC_CheckPredicate, 16, // Predicate_extloadvi16 |
| 17216 | /* 33803*/ OPC_CheckType, MVT::v4i32, |
| 17217 | /* 33805*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17218 | /* 33807*/ OPC_EmitMergeInputChains1_0, |
| 17219 | /* 33808*/ OPC_EmitInteger, MVT::i32, 0, |
| 17220 | /* 33811*/ OPC_EmitConvertToTarget, 2, |
| 17221 | /* 33813*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17222 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17223 | // Src: (ld:{ *:[v4i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi16>> - Complexity = 11 |
| 17224 | // Dst: (LOAD_EXTEND_U_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17225 | /* 33822*/ /*Scope*/ 23, /*->33846*/ |
| 17226 | /* 33823*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17227 | /* 33825*/ OPC_CheckPredicate, 17, // Predicate_sextloadvi32 |
| 17228 | /* 33827*/ OPC_CheckType, MVT::v2i64, |
| 17229 | /* 33829*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17230 | /* 33831*/ OPC_EmitMergeInputChains1_0, |
| 17231 | /* 33832*/ OPC_EmitInteger, MVT::i32, 0, |
| 17232 | /* 33835*/ OPC_EmitConvertToTarget, 2, |
| 17233 | /* 33837*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17234 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17235 | // Src: (ld:{ *:[v2i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi32>> - Complexity = 11 |
| 17236 | // Dst: (LOAD_EXTEND_S_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17237 | /* 33846*/ /*Scope*/ 23, /*->33870*/ |
| 17238 | /* 33847*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17239 | /* 33849*/ OPC_CheckPredicate, 17, // Predicate_zextloadvi32 |
| 17240 | /* 33851*/ OPC_CheckType, MVT::v2i64, |
| 17241 | /* 33853*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17242 | /* 33855*/ OPC_EmitMergeInputChains1_0, |
| 17243 | /* 33856*/ OPC_EmitInteger, MVT::i32, 0, |
| 17244 | /* 33859*/ OPC_EmitConvertToTarget, 2, |
| 17245 | /* 33861*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17246 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17247 | // Src: (ld:{ *:[v2i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi32>> - Complexity = 11 |
| 17248 | // Dst: (LOAD_EXTEND_U_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17249 | /* 33870*/ /*Scope*/ 23, /*->33894*/ |
| 17250 | /* 33871*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17251 | /* 33873*/ OPC_CheckPredicate, 17, // Predicate_extloadvi32 |
| 17252 | /* 33875*/ OPC_CheckType, MVT::v2i64, |
| 17253 | /* 33877*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17254 | /* 33879*/ OPC_EmitMergeInputChains1_0, |
| 17255 | /* 33880*/ OPC_EmitInteger, MVT::i32, 0, |
| 17256 | /* 33883*/ OPC_EmitConvertToTarget, 2, |
| 17257 | /* 33885*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17258 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17259 | // Src: (ld:{ *:[v2i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi32>> - Complexity = 11 |
| 17260 | // Dst: (LOAD_EXTEND_U_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17261 | /* 33894*/ 0, /*End of Scope*/ |
| 17262 | /* 33895*/ 0, // EndSwitchType |
| 17263 | /* 33896*/ /*SwitchOpcode*/ 109|128,4/*621*/, TARGET_VAL(ISD::OR),// ->34521 |
| 17264 | /* 33900*/ OPC_RecordChild0, // #1 = $addr |
| 17265 | /* 33901*/ OPC_RecordChild1, // #2 = $off |
| 17266 | /* 33902*/ OPC_MoveChild1, |
| 17267 | /* 33903*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 17268 | /* 33906*/ OPC_MoveParent, |
| 17269 | /* 33907*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 17270 | /* 33909*/ OPC_SwitchType /*2 cases */, 46|128,2/*302*/, MVT::i32,// ->34215 |
| 17271 | /* 33913*/ OPC_MoveParent, |
| 17272 | /* 33914*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 17273 | /* 33916*/ OPC_Scope, 80, /*->33998*/ // 10 children in Scope |
| 17274 | /* 33918*/ OPC_CheckPredicate, 11, // Predicate_load |
| 17275 | /* 33920*/ OPC_SwitchType /*4 cases */, 17, MVT::v16i8,// ->33940 |
| 17276 | /* 33923*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17277 | /* 33925*/ OPC_EmitMergeInputChains1_0, |
| 17278 | /* 33926*/ OPC_EmitInteger, MVT::i32, 0, |
| 17279 | /* 33929*/ OPC_EmitConvertToTarget, 2, |
| 17280 | /* 33931*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17281 | MVT::v16i8, 3/*#Ops*/, 3, 4, 1, |
| 17282 | // Src: (ld:{ *:[v16i8] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17283 | // Dst: (LOAD_V128_A32:{ *:[v16i8] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17284 | /* 33940*/ /*SwitchType*/ 17, MVT::v8i16,// ->33959 |
| 17285 | /* 33942*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17286 | /* 33944*/ OPC_EmitMergeInputChains1_0, |
| 17287 | /* 33945*/ OPC_EmitInteger, MVT::i32, 0, |
| 17288 | /* 33948*/ OPC_EmitConvertToTarget, 2, |
| 17289 | /* 33950*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17290 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17291 | // Src: (ld:{ *:[v8i16] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17292 | // Dst: (LOAD_V128_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17293 | /* 33959*/ /*SwitchType*/ 17, MVT::v4i32,// ->33978 |
| 17294 | /* 33961*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17295 | /* 33963*/ OPC_EmitMergeInputChains1_0, |
| 17296 | /* 33964*/ OPC_EmitInteger, MVT::i32, 0, |
| 17297 | /* 33967*/ OPC_EmitConvertToTarget, 2, |
| 17298 | /* 33969*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17299 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17300 | // Src: (ld:{ *:[v4i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17301 | // Dst: (LOAD_V128_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17302 | /* 33978*/ /*SwitchType*/ 17, MVT::v2i64,// ->33997 |
| 17303 | /* 33980*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17304 | /* 33982*/ OPC_EmitMergeInputChains1_0, |
| 17305 | /* 33983*/ OPC_EmitInteger, MVT::i32, 0, |
| 17306 | /* 33986*/ OPC_EmitConvertToTarget, 2, |
| 17307 | /* 33988*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17308 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17309 | // Src: (ld:{ *:[v2i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17310 | // Dst: (LOAD_V128_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17311 | /* 33997*/ 0, // EndSwitchType |
| 17312 | /* 33998*/ /*Scope*/ 23, /*->34022*/ |
| 17313 | /* 33999*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17314 | /* 34001*/ OPC_CheckPredicate, 15, // Predicate_sextloadvi8 |
| 17315 | /* 34003*/ OPC_CheckType, MVT::v8i16, |
| 17316 | /* 34005*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17317 | /* 34007*/ OPC_EmitMergeInputChains1_0, |
| 17318 | /* 34008*/ OPC_EmitInteger, MVT::i32, 0, |
| 17319 | /* 34011*/ OPC_EmitConvertToTarget, 2, |
| 17320 | /* 34013*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17321 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17322 | // Src: (ld:{ *:[v8i16] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi8>> - Complexity = 11 |
| 17323 | // Dst: (LOAD_EXTEND_S_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17324 | /* 34022*/ /*Scope*/ 23, /*->34046*/ |
| 17325 | /* 34023*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17326 | /* 34025*/ OPC_CheckPredicate, 15, // Predicate_zextloadvi8 |
| 17327 | /* 34027*/ OPC_CheckType, MVT::v8i16, |
| 17328 | /* 34029*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17329 | /* 34031*/ OPC_EmitMergeInputChains1_0, |
| 17330 | /* 34032*/ OPC_EmitInteger, MVT::i32, 0, |
| 17331 | /* 34035*/ OPC_EmitConvertToTarget, 2, |
| 17332 | /* 34037*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17333 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17334 | // Src: (ld:{ *:[v8i16] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi8>> - Complexity = 11 |
| 17335 | // Dst: (LOAD_EXTEND_U_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17336 | /* 34046*/ /*Scope*/ 23, /*->34070*/ |
| 17337 | /* 34047*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17338 | /* 34049*/ OPC_CheckPredicate, 15, // Predicate_extloadvi8 |
| 17339 | /* 34051*/ OPC_CheckType, MVT::v8i16, |
| 17340 | /* 34053*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17341 | /* 34055*/ OPC_EmitMergeInputChains1_0, |
| 17342 | /* 34056*/ OPC_EmitInteger, MVT::i32, 0, |
| 17343 | /* 34059*/ OPC_EmitConvertToTarget, 2, |
| 17344 | /* 34061*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17345 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17346 | // Src: (ld:{ *:[v8i16] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi8>> - Complexity = 11 |
| 17347 | // Dst: (LOAD_EXTEND_U_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17348 | /* 34070*/ /*Scope*/ 23, /*->34094*/ |
| 17349 | /* 34071*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17350 | /* 34073*/ OPC_CheckPredicate, 16, // Predicate_sextloadvi16 |
| 17351 | /* 34075*/ OPC_CheckType, MVT::v4i32, |
| 17352 | /* 34077*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17353 | /* 34079*/ OPC_EmitMergeInputChains1_0, |
| 17354 | /* 34080*/ OPC_EmitInteger, MVT::i32, 0, |
| 17355 | /* 34083*/ OPC_EmitConvertToTarget, 2, |
| 17356 | /* 34085*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17357 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17358 | // Src: (ld:{ *:[v4i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi16>> - Complexity = 11 |
| 17359 | // Dst: (LOAD_EXTEND_S_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17360 | /* 34094*/ /*Scope*/ 23, /*->34118*/ |
| 17361 | /* 34095*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17362 | /* 34097*/ OPC_CheckPredicate, 16, // Predicate_zextloadvi16 |
| 17363 | /* 34099*/ OPC_CheckType, MVT::v4i32, |
| 17364 | /* 34101*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17365 | /* 34103*/ OPC_EmitMergeInputChains1_0, |
| 17366 | /* 34104*/ OPC_EmitInteger, MVT::i32, 0, |
| 17367 | /* 34107*/ OPC_EmitConvertToTarget, 2, |
| 17368 | /* 34109*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17369 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17370 | // Src: (ld:{ *:[v4i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi16>> - Complexity = 11 |
| 17371 | // Dst: (LOAD_EXTEND_U_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17372 | /* 34118*/ /*Scope*/ 23, /*->34142*/ |
| 17373 | /* 34119*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17374 | /* 34121*/ OPC_CheckPredicate, 16, // Predicate_extloadvi16 |
| 17375 | /* 34123*/ OPC_CheckType, MVT::v4i32, |
| 17376 | /* 34125*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17377 | /* 34127*/ OPC_EmitMergeInputChains1_0, |
| 17378 | /* 34128*/ OPC_EmitInteger, MVT::i32, 0, |
| 17379 | /* 34131*/ OPC_EmitConvertToTarget, 2, |
| 17380 | /* 34133*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17381 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17382 | // Src: (ld:{ *:[v4i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi16>> - Complexity = 11 |
| 17383 | // Dst: (LOAD_EXTEND_U_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17384 | /* 34142*/ /*Scope*/ 23, /*->34166*/ |
| 17385 | /* 34143*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17386 | /* 34145*/ OPC_CheckPredicate, 17, // Predicate_sextloadvi32 |
| 17387 | /* 34147*/ OPC_CheckType, MVT::v2i64, |
| 17388 | /* 34149*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17389 | /* 34151*/ OPC_EmitMergeInputChains1_0, |
| 17390 | /* 34152*/ OPC_EmitInteger, MVT::i32, 0, |
| 17391 | /* 34155*/ OPC_EmitConvertToTarget, 2, |
| 17392 | /* 34157*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17393 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17394 | // Src: (ld:{ *:[v2i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi32>> - Complexity = 11 |
| 17395 | // Dst: (LOAD_EXTEND_S_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17396 | /* 34166*/ /*Scope*/ 23, /*->34190*/ |
| 17397 | /* 34167*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17398 | /* 34169*/ OPC_CheckPredicate, 17, // Predicate_zextloadvi32 |
| 17399 | /* 34171*/ OPC_CheckType, MVT::v2i64, |
| 17400 | /* 34173*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17401 | /* 34175*/ OPC_EmitMergeInputChains1_0, |
| 17402 | /* 34176*/ OPC_EmitInteger, MVT::i32, 0, |
| 17403 | /* 34179*/ OPC_EmitConvertToTarget, 2, |
| 17404 | /* 34181*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17405 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17406 | // Src: (ld:{ *:[v2i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi32>> - Complexity = 11 |
| 17407 | // Dst: (LOAD_EXTEND_U_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17408 | /* 34190*/ /*Scope*/ 23, /*->34214*/ |
| 17409 | /* 34191*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17410 | /* 34193*/ OPC_CheckPredicate, 17, // Predicate_extloadvi32 |
| 17411 | /* 34195*/ OPC_CheckType, MVT::v2i64, |
| 17412 | /* 34197*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17413 | /* 34199*/ OPC_EmitMergeInputChains1_0, |
| 17414 | /* 34200*/ OPC_EmitInteger, MVT::i32, 0, |
| 17415 | /* 34203*/ OPC_EmitConvertToTarget, 2, |
| 17416 | /* 34205*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17417 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17418 | // Src: (ld:{ *:[v2i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi32>> - Complexity = 11 |
| 17419 | // Dst: (LOAD_EXTEND_U_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 17420 | /* 34214*/ 0, /*End of Scope*/ |
| 17421 | /* 34215*/ /*SwitchType*/ 46|128,2/*302*/, MVT::i64,// ->34520 |
| 17422 | /* 34218*/ OPC_MoveParent, |
| 17423 | /* 34219*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 17424 | /* 34221*/ OPC_Scope, 80, /*->34303*/ // 10 children in Scope |
| 17425 | /* 34223*/ OPC_CheckPredicate, 11, // Predicate_load |
| 17426 | /* 34225*/ OPC_SwitchType /*4 cases */, 17, MVT::v16i8,// ->34245 |
| 17427 | /* 34228*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17428 | /* 34230*/ OPC_EmitMergeInputChains1_0, |
| 17429 | /* 34231*/ OPC_EmitInteger, MVT::i32, 0, |
| 17430 | /* 34234*/ OPC_EmitConvertToTarget, 2, |
| 17431 | /* 34236*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17432 | MVT::v16i8, 3/*#Ops*/, 3, 4, 1, |
| 17433 | // Src: (ld:{ *:[v16i8] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17434 | // Dst: (LOAD_V128_A64:{ *:[v16i8] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17435 | /* 34245*/ /*SwitchType*/ 17, MVT::v8i16,// ->34264 |
| 17436 | /* 34247*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17437 | /* 34249*/ OPC_EmitMergeInputChains1_0, |
| 17438 | /* 34250*/ OPC_EmitInteger, MVT::i32, 0, |
| 17439 | /* 34253*/ OPC_EmitConvertToTarget, 2, |
| 17440 | /* 34255*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17441 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17442 | // Src: (ld:{ *:[v8i16] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17443 | // Dst: (LOAD_V128_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17444 | /* 34264*/ /*SwitchType*/ 17, MVT::v4i32,// ->34283 |
| 17445 | /* 34266*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17446 | /* 34268*/ OPC_EmitMergeInputChains1_0, |
| 17447 | /* 34269*/ OPC_EmitInteger, MVT::i32, 0, |
| 17448 | /* 34272*/ OPC_EmitConvertToTarget, 2, |
| 17449 | /* 34274*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17450 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17451 | // Src: (ld:{ *:[v4i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17452 | // Dst: (LOAD_V128_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17453 | /* 34283*/ /*SwitchType*/ 17, MVT::v2i64,// ->34302 |
| 17454 | /* 34285*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17455 | /* 34287*/ OPC_EmitMergeInputChains1_0, |
| 17456 | /* 34288*/ OPC_EmitInteger, MVT::i32, 0, |
| 17457 | /* 34291*/ OPC_EmitConvertToTarget, 2, |
| 17458 | /* 34293*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17459 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17460 | // Src: (ld:{ *:[v2i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 17461 | // Dst: (LOAD_V128_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17462 | /* 34302*/ 0, // EndSwitchType |
| 17463 | /* 34303*/ /*Scope*/ 23, /*->34327*/ |
| 17464 | /* 34304*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17465 | /* 34306*/ OPC_CheckPredicate, 15, // Predicate_sextloadvi8 |
| 17466 | /* 34308*/ OPC_CheckType, MVT::v8i16, |
| 17467 | /* 34310*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17468 | /* 34312*/ OPC_EmitMergeInputChains1_0, |
| 17469 | /* 34313*/ OPC_EmitInteger, MVT::i32, 0, |
| 17470 | /* 34316*/ OPC_EmitConvertToTarget, 2, |
| 17471 | /* 34318*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17472 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17473 | // Src: (ld:{ *:[v8i16] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi8>> - Complexity = 11 |
| 17474 | // Dst: (LOAD_EXTEND_S_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17475 | /* 34327*/ /*Scope*/ 23, /*->34351*/ |
| 17476 | /* 34328*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17477 | /* 34330*/ OPC_CheckPredicate, 15, // Predicate_zextloadvi8 |
| 17478 | /* 34332*/ OPC_CheckType, MVT::v8i16, |
| 17479 | /* 34334*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17480 | /* 34336*/ OPC_EmitMergeInputChains1_0, |
| 17481 | /* 34337*/ OPC_EmitInteger, MVT::i32, 0, |
| 17482 | /* 34340*/ OPC_EmitConvertToTarget, 2, |
| 17483 | /* 34342*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17484 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17485 | // Src: (ld:{ *:[v8i16] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi8>> - Complexity = 11 |
| 17486 | // Dst: (LOAD_EXTEND_U_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17487 | /* 34351*/ /*Scope*/ 23, /*->34375*/ |
| 17488 | /* 34352*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17489 | /* 34354*/ OPC_CheckPredicate, 15, // Predicate_extloadvi8 |
| 17490 | /* 34356*/ OPC_CheckType, MVT::v8i16, |
| 17491 | /* 34358*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17492 | /* 34360*/ OPC_EmitMergeInputChains1_0, |
| 17493 | /* 34361*/ OPC_EmitInteger, MVT::i32, 0, |
| 17494 | /* 34364*/ OPC_EmitConvertToTarget, 2, |
| 17495 | /* 34366*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17496 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 17497 | // Src: (ld:{ *:[v8i16] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi8>> - Complexity = 11 |
| 17498 | // Dst: (LOAD_EXTEND_U_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17499 | /* 34375*/ /*Scope*/ 23, /*->34399*/ |
| 17500 | /* 34376*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17501 | /* 34378*/ OPC_CheckPredicate, 16, // Predicate_sextloadvi16 |
| 17502 | /* 34380*/ OPC_CheckType, MVT::v4i32, |
| 17503 | /* 34382*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17504 | /* 34384*/ OPC_EmitMergeInputChains1_0, |
| 17505 | /* 34385*/ OPC_EmitInteger, MVT::i32, 0, |
| 17506 | /* 34388*/ OPC_EmitConvertToTarget, 2, |
| 17507 | /* 34390*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17508 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17509 | // Src: (ld:{ *:[v4i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi16>> - Complexity = 11 |
| 17510 | // Dst: (LOAD_EXTEND_S_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17511 | /* 34399*/ /*Scope*/ 23, /*->34423*/ |
| 17512 | /* 34400*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17513 | /* 34402*/ OPC_CheckPredicate, 16, // Predicate_zextloadvi16 |
| 17514 | /* 34404*/ OPC_CheckType, MVT::v4i32, |
| 17515 | /* 34406*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17516 | /* 34408*/ OPC_EmitMergeInputChains1_0, |
| 17517 | /* 34409*/ OPC_EmitInteger, MVT::i32, 0, |
| 17518 | /* 34412*/ OPC_EmitConvertToTarget, 2, |
| 17519 | /* 34414*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17520 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17521 | // Src: (ld:{ *:[v4i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi16>> - Complexity = 11 |
| 17522 | // Dst: (LOAD_EXTEND_U_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17523 | /* 34423*/ /*Scope*/ 23, /*->34447*/ |
| 17524 | /* 34424*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17525 | /* 34426*/ OPC_CheckPredicate, 16, // Predicate_extloadvi16 |
| 17526 | /* 34428*/ OPC_CheckType, MVT::v4i32, |
| 17527 | /* 34430*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17528 | /* 34432*/ OPC_EmitMergeInputChains1_0, |
| 17529 | /* 34433*/ OPC_EmitInteger, MVT::i32, 0, |
| 17530 | /* 34436*/ OPC_EmitConvertToTarget, 2, |
| 17531 | /* 34438*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17532 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 17533 | // Src: (ld:{ *:[v4i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi16>> - Complexity = 11 |
| 17534 | // Dst: (LOAD_EXTEND_U_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17535 | /* 34447*/ /*Scope*/ 23, /*->34471*/ |
| 17536 | /* 34448*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17537 | /* 34450*/ OPC_CheckPredicate, 17, // Predicate_sextloadvi32 |
| 17538 | /* 34452*/ OPC_CheckType, MVT::v2i64, |
| 17539 | /* 34454*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17540 | /* 34456*/ OPC_EmitMergeInputChains1_0, |
| 17541 | /* 34457*/ OPC_EmitInteger, MVT::i32, 0, |
| 17542 | /* 34460*/ OPC_EmitConvertToTarget, 2, |
| 17543 | /* 34462*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17544 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17545 | // Src: (ld:{ *:[v2i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi32>> - Complexity = 11 |
| 17546 | // Dst: (LOAD_EXTEND_S_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17547 | /* 34471*/ /*Scope*/ 23, /*->34495*/ |
| 17548 | /* 34472*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17549 | /* 34474*/ OPC_CheckPredicate, 17, // Predicate_zextloadvi32 |
| 17550 | /* 34476*/ OPC_CheckType, MVT::v2i64, |
| 17551 | /* 34478*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17552 | /* 34480*/ OPC_EmitMergeInputChains1_0, |
| 17553 | /* 34481*/ OPC_EmitInteger, MVT::i32, 0, |
| 17554 | /* 34484*/ OPC_EmitConvertToTarget, 2, |
| 17555 | /* 34486*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17556 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17557 | // Src: (ld:{ *:[v2i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi32>> - Complexity = 11 |
| 17558 | // Dst: (LOAD_EXTEND_U_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17559 | /* 34495*/ /*Scope*/ 23, /*->34519*/ |
| 17560 | /* 34496*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17561 | /* 34498*/ OPC_CheckPredicate, 17, // Predicate_extloadvi32 |
| 17562 | /* 34500*/ OPC_CheckType, MVT::v2i64, |
| 17563 | /* 34502*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17564 | /* 34504*/ OPC_EmitMergeInputChains1_0, |
| 17565 | /* 34505*/ OPC_EmitInteger, MVT::i32, 0, |
| 17566 | /* 34508*/ OPC_EmitConvertToTarget, 2, |
| 17567 | /* 34510*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17568 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 17569 | // Src: (ld:{ *:[v2i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi32>> - Complexity = 11 |
| 17570 | // Dst: (LOAD_EXTEND_U_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 17571 | /* 34519*/ 0, /*End of Scope*/ |
| 17572 | /* 34520*/ 0, // EndSwitchType |
| 17573 | /* 34521*/ /*SwitchOpcode*/ 22|128,6/*790*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->35315 |
| 17574 | /* 34525*/ OPC_RecordChild0, // #1 = $off |
| 17575 | /* 34526*/ OPC_MoveChild0, |
| 17576 | /* 34527*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 17577 | /* 34530*/ OPC_MoveParent, |
| 17578 | /* 34531*/ OPC_MoveParent, |
| 17579 | /* 34532*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 17580 | /* 34534*/ OPC_Scope, 100|128,1/*228*/, /*->34765*/ // 10 children in Scope |
| 17581 | /* 34537*/ OPC_CheckPredicate, 11, // Predicate_load |
| 17582 | /* 34539*/ OPC_SwitchType /*4 cases */, 54, MVT::v16i8,// ->34596 |
| 17583 | /* 34542*/ OPC_Scope, 25, /*->34569*/ // 2 children in Scope |
| 17584 | /* 34544*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17585 | /* 34546*/ OPC_EmitMergeInputChains1_0, |
| 17586 | /* 34547*/ OPC_EmitInteger, MVT::i32, 0, |
| 17587 | /* 34550*/ OPC_EmitInteger, MVT::i32, 0, |
| 17588 | /* 34553*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17589 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17590 | /* 34560*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17591 | MVT::v16i8, 3/*#Ops*/, 2, 1, 4, |
| 17592 | // Src: (ld:{ *:[v16i8] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 17593 | // Dst: (LOAD_V128_A32:{ *:[v16i8] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17594 | /* 34569*/ /*Scope*/ 25, /*->34595*/ |
| 17595 | /* 34570*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17596 | /* 34572*/ OPC_EmitMergeInputChains1_0, |
| 17597 | /* 34573*/ OPC_EmitInteger, MVT::i32, 0, |
| 17598 | /* 34576*/ OPC_EmitInteger, MVT::i64, 0, |
| 17599 | /* 34579*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17600 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17601 | /* 34586*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17602 | MVT::v16i8, 3/*#Ops*/, 2, 1, 4, |
| 17603 | // Src: (ld:{ *:[v16i8] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 17604 | // Dst: (LOAD_V128_A64:{ *:[v16i8] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17605 | /* 34595*/ 0, /*End of Scope*/ |
| 17606 | /* 34596*/ /*SwitchType*/ 54, MVT::v8i16,// ->34652 |
| 17607 | /* 34598*/ OPC_Scope, 25, /*->34625*/ // 2 children in Scope |
| 17608 | /* 34600*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17609 | /* 34602*/ OPC_EmitMergeInputChains1_0, |
| 17610 | /* 34603*/ OPC_EmitInteger, MVT::i32, 0, |
| 17611 | /* 34606*/ OPC_EmitInteger, MVT::i32, 0, |
| 17612 | /* 34609*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17613 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17614 | /* 34616*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17615 | MVT::v8i16, 3/*#Ops*/, 2, 1, 4, |
| 17616 | // Src: (ld:{ *:[v8i16] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 17617 | // Dst: (LOAD_V128_A32:{ *:[v8i16] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17618 | /* 34625*/ /*Scope*/ 25, /*->34651*/ |
| 17619 | /* 34626*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17620 | /* 34628*/ OPC_EmitMergeInputChains1_0, |
| 17621 | /* 34629*/ OPC_EmitInteger, MVT::i32, 0, |
| 17622 | /* 34632*/ OPC_EmitInteger, MVT::i64, 0, |
| 17623 | /* 34635*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17624 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17625 | /* 34642*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17626 | MVT::v8i16, 3/*#Ops*/, 2, 1, 4, |
| 17627 | // Src: (ld:{ *:[v8i16] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 17628 | // Dst: (LOAD_V128_A64:{ *:[v8i16] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17629 | /* 34651*/ 0, /*End of Scope*/ |
| 17630 | /* 34652*/ /*SwitchType*/ 54, MVT::v4i32,// ->34708 |
| 17631 | /* 34654*/ OPC_Scope, 25, /*->34681*/ // 2 children in Scope |
| 17632 | /* 34656*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17633 | /* 34658*/ OPC_EmitMergeInputChains1_0, |
| 17634 | /* 34659*/ OPC_EmitInteger, MVT::i32, 0, |
| 17635 | /* 34662*/ OPC_EmitInteger, MVT::i32, 0, |
| 17636 | /* 34665*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17637 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17638 | /* 34672*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17639 | MVT::v4i32, 3/*#Ops*/, 2, 1, 4, |
| 17640 | // Src: (ld:{ *:[v4i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 17641 | // Dst: (LOAD_V128_A32:{ *:[v4i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17642 | /* 34681*/ /*Scope*/ 25, /*->34707*/ |
| 17643 | /* 34682*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17644 | /* 34684*/ OPC_EmitMergeInputChains1_0, |
| 17645 | /* 34685*/ OPC_EmitInteger, MVT::i32, 0, |
| 17646 | /* 34688*/ OPC_EmitInteger, MVT::i64, 0, |
| 17647 | /* 34691*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17648 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17649 | /* 34698*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17650 | MVT::v4i32, 3/*#Ops*/, 2, 1, 4, |
| 17651 | // Src: (ld:{ *:[v4i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 17652 | // Dst: (LOAD_V128_A64:{ *:[v4i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17653 | /* 34707*/ 0, /*End of Scope*/ |
| 17654 | /* 34708*/ /*SwitchType*/ 54, MVT::v2i64,// ->34764 |
| 17655 | /* 34710*/ OPC_Scope, 25, /*->34737*/ // 2 children in Scope |
| 17656 | /* 34712*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17657 | /* 34714*/ OPC_EmitMergeInputChains1_0, |
| 17658 | /* 34715*/ OPC_EmitInteger, MVT::i32, 0, |
| 17659 | /* 34718*/ OPC_EmitInteger, MVT::i32, 0, |
| 17660 | /* 34721*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17661 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17662 | /* 34728*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17663 | MVT::v2i64, 3/*#Ops*/, 2, 1, 4, |
| 17664 | // Src: (ld:{ *:[v2i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 17665 | // Dst: (LOAD_V128_A32:{ *:[v2i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17666 | /* 34737*/ /*Scope*/ 25, /*->34763*/ |
| 17667 | /* 34738*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17668 | /* 34740*/ OPC_EmitMergeInputChains1_0, |
| 17669 | /* 34741*/ OPC_EmitInteger, MVT::i32, 0, |
| 17670 | /* 34744*/ OPC_EmitInteger, MVT::i64, 0, |
| 17671 | /* 34747*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17672 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17673 | /* 34754*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17674 | MVT::v2i64, 3/*#Ops*/, 2, 1, 4, |
| 17675 | // Src: (ld:{ *:[v2i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 17676 | // Dst: (LOAD_V128_A64:{ *:[v2i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17677 | /* 34763*/ 0, /*End of Scope*/ |
| 17678 | /* 34764*/ 0, // EndSwitchType |
| 17679 | /* 34765*/ /*Scope*/ 60, /*->34826*/ |
| 17680 | /* 34766*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17681 | /* 34768*/ OPC_CheckPredicate, 15, // Predicate_sextloadvi8 |
| 17682 | /* 34770*/ OPC_CheckType, MVT::v8i16, |
| 17683 | /* 34772*/ OPC_Scope, 25, /*->34799*/ // 2 children in Scope |
| 17684 | /* 34774*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17685 | /* 34776*/ OPC_EmitMergeInputChains1_0, |
| 17686 | /* 34777*/ OPC_EmitInteger, MVT::i32, 0, |
| 17687 | /* 34780*/ OPC_EmitInteger, MVT::i32, 0, |
| 17688 | /* 34783*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17689 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17690 | /* 34790*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17691 | MVT::v8i16, 3/*#Ops*/, 2, 1, 4, |
| 17692 | // Src: (ld:{ *:[v8i16] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi8>> - Complexity = 10 |
| 17693 | // Dst: (LOAD_EXTEND_S_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17694 | /* 34799*/ /*Scope*/ 25, /*->34825*/ |
| 17695 | /* 34800*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17696 | /* 34802*/ OPC_EmitMergeInputChains1_0, |
| 17697 | /* 34803*/ OPC_EmitInteger, MVT::i32, 0, |
| 17698 | /* 34806*/ OPC_EmitInteger, MVT::i64, 0, |
| 17699 | /* 34809*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17700 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17701 | /* 34816*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17702 | MVT::v8i16, 3/*#Ops*/, 2, 1, 4, |
| 17703 | // Src: (ld:{ *:[v8i16] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi8>> - Complexity = 10 |
| 17704 | // Dst: (LOAD_EXTEND_S_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17705 | /* 34825*/ 0, /*End of Scope*/ |
| 17706 | /* 34826*/ /*Scope*/ 60, /*->34887*/ |
| 17707 | /* 34827*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17708 | /* 34829*/ OPC_CheckPredicate, 15, // Predicate_zextloadvi8 |
| 17709 | /* 34831*/ OPC_CheckType, MVT::v8i16, |
| 17710 | /* 34833*/ OPC_Scope, 25, /*->34860*/ // 2 children in Scope |
| 17711 | /* 34835*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17712 | /* 34837*/ OPC_EmitMergeInputChains1_0, |
| 17713 | /* 34838*/ OPC_EmitInteger, MVT::i32, 0, |
| 17714 | /* 34841*/ OPC_EmitInteger, MVT::i32, 0, |
| 17715 | /* 34844*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17716 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17717 | /* 34851*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17718 | MVT::v8i16, 3/*#Ops*/, 2, 1, 4, |
| 17719 | // Src: (ld:{ *:[v8i16] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi8>> - Complexity = 10 |
| 17720 | // Dst: (LOAD_EXTEND_U_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17721 | /* 34860*/ /*Scope*/ 25, /*->34886*/ |
| 17722 | /* 34861*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17723 | /* 34863*/ OPC_EmitMergeInputChains1_0, |
| 17724 | /* 34864*/ OPC_EmitInteger, MVT::i32, 0, |
| 17725 | /* 34867*/ OPC_EmitInteger, MVT::i64, 0, |
| 17726 | /* 34870*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17727 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17728 | /* 34877*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17729 | MVT::v8i16, 3/*#Ops*/, 2, 1, 4, |
| 17730 | // Src: (ld:{ *:[v8i16] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi8>> - Complexity = 10 |
| 17731 | // Dst: (LOAD_EXTEND_U_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17732 | /* 34886*/ 0, /*End of Scope*/ |
| 17733 | /* 34887*/ /*Scope*/ 60, /*->34948*/ |
| 17734 | /* 34888*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17735 | /* 34890*/ OPC_CheckPredicate, 15, // Predicate_extloadvi8 |
| 17736 | /* 34892*/ OPC_CheckType, MVT::v8i16, |
| 17737 | /* 34894*/ OPC_Scope, 25, /*->34921*/ // 2 children in Scope |
| 17738 | /* 34896*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17739 | /* 34898*/ OPC_EmitMergeInputChains1_0, |
| 17740 | /* 34899*/ OPC_EmitInteger, MVT::i32, 0, |
| 17741 | /* 34902*/ OPC_EmitInteger, MVT::i32, 0, |
| 17742 | /* 34905*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17743 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17744 | /* 34912*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17745 | MVT::v8i16, 3/*#Ops*/, 2, 1, 4, |
| 17746 | // Src: (ld:{ *:[v8i16] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi8>> - Complexity = 10 |
| 17747 | // Dst: (LOAD_EXTEND_U_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17748 | /* 34921*/ /*Scope*/ 25, /*->34947*/ |
| 17749 | /* 34922*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17750 | /* 34924*/ OPC_EmitMergeInputChains1_0, |
| 17751 | /* 34925*/ OPC_EmitInteger, MVT::i32, 0, |
| 17752 | /* 34928*/ OPC_EmitInteger, MVT::i64, 0, |
| 17753 | /* 34931*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17754 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17755 | /* 34938*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17756 | MVT::v8i16, 3/*#Ops*/, 2, 1, 4, |
| 17757 | // Src: (ld:{ *:[v8i16] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi8>> - Complexity = 10 |
| 17758 | // Dst: (LOAD_EXTEND_U_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17759 | /* 34947*/ 0, /*End of Scope*/ |
| 17760 | /* 34948*/ /*Scope*/ 60, /*->35009*/ |
| 17761 | /* 34949*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17762 | /* 34951*/ OPC_CheckPredicate, 16, // Predicate_sextloadvi16 |
| 17763 | /* 34953*/ OPC_CheckType, MVT::v4i32, |
| 17764 | /* 34955*/ OPC_Scope, 25, /*->34982*/ // 2 children in Scope |
| 17765 | /* 34957*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17766 | /* 34959*/ OPC_EmitMergeInputChains1_0, |
| 17767 | /* 34960*/ OPC_EmitInteger, MVT::i32, 0, |
| 17768 | /* 34963*/ OPC_EmitInteger, MVT::i32, 0, |
| 17769 | /* 34966*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17770 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17771 | /* 34973*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17772 | MVT::v4i32, 3/*#Ops*/, 2, 1, 4, |
| 17773 | // Src: (ld:{ *:[v4i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi16>> - Complexity = 10 |
| 17774 | // Dst: (LOAD_EXTEND_S_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17775 | /* 34982*/ /*Scope*/ 25, /*->35008*/ |
| 17776 | /* 34983*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17777 | /* 34985*/ OPC_EmitMergeInputChains1_0, |
| 17778 | /* 34986*/ OPC_EmitInteger, MVT::i32, 0, |
| 17779 | /* 34989*/ OPC_EmitInteger, MVT::i64, 0, |
| 17780 | /* 34992*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17781 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17782 | /* 34999*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17783 | MVT::v4i32, 3/*#Ops*/, 2, 1, 4, |
| 17784 | // Src: (ld:{ *:[v4i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi16>> - Complexity = 10 |
| 17785 | // Dst: (LOAD_EXTEND_S_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17786 | /* 35008*/ 0, /*End of Scope*/ |
| 17787 | /* 35009*/ /*Scope*/ 60, /*->35070*/ |
| 17788 | /* 35010*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17789 | /* 35012*/ OPC_CheckPredicate, 16, // Predicate_zextloadvi16 |
| 17790 | /* 35014*/ OPC_CheckType, MVT::v4i32, |
| 17791 | /* 35016*/ OPC_Scope, 25, /*->35043*/ // 2 children in Scope |
| 17792 | /* 35018*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17793 | /* 35020*/ OPC_EmitMergeInputChains1_0, |
| 17794 | /* 35021*/ OPC_EmitInteger, MVT::i32, 0, |
| 17795 | /* 35024*/ OPC_EmitInteger, MVT::i32, 0, |
| 17796 | /* 35027*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17797 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17798 | /* 35034*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17799 | MVT::v4i32, 3/*#Ops*/, 2, 1, 4, |
| 17800 | // Src: (ld:{ *:[v4i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi16>> - Complexity = 10 |
| 17801 | // Dst: (LOAD_EXTEND_U_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17802 | /* 35043*/ /*Scope*/ 25, /*->35069*/ |
| 17803 | /* 35044*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17804 | /* 35046*/ OPC_EmitMergeInputChains1_0, |
| 17805 | /* 35047*/ OPC_EmitInteger, MVT::i32, 0, |
| 17806 | /* 35050*/ OPC_EmitInteger, MVT::i64, 0, |
| 17807 | /* 35053*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17808 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17809 | /* 35060*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17810 | MVT::v4i32, 3/*#Ops*/, 2, 1, 4, |
| 17811 | // Src: (ld:{ *:[v4i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi16>> - Complexity = 10 |
| 17812 | // Dst: (LOAD_EXTEND_U_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17813 | /* 35069*/ 0, /*End of Scope*/ |
| 17814 | /* 35070*/ /*Scope*/ 60, /*->35131*/ |
| 17815 | /* 35071*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17816 | /* 35073*/ OPC_CheckPredicate, 16, // Predicate_extloadvi16 |
| 17817 | /* 35075*/ OPC_CheckType, MVT::v4i32, |
| 17818 | /* 35077*/ OPC_Scope, 25, /*->35104*/ // 2 children in Scope |
| 17819 | /* 35079*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17820 | /* 35081*/ OPC_EmitMergeInputChains1_0, |
| 17821 | /* 35082*/ OPC_EmitInteger, MVT::i32, 0, |
| 17822 | /* 35085*/ OPC_EmitInteger, MVT::i32, 0, |
| 17823 | /* 35088*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17824 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17825 | /* 35095*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17826 | MVT::v4i32, 3/*#Ops*/, 2, 1, 4, |
| 17827 | // Src: (ld:{ *:[v4i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi16>> - Complexity = 10 |
| 17828 | // Dst: (LOAD_EXTEND_U_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17829 | /* 35104*/ /*Scope*/ 25, /*->35130*/ |
| 17830 | /* 35105*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17831 | /* 35107*/ OPC_EmitMergeInputChains1_0, |
| 17832 | /* 35108*/ OPC_EmitInteger, MVT::i32, 0, |
| 17833 | /* 35111*/ OPC_EmitInteger, MVT::i64, 0, |
| 17834 | /* 35114*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17835 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17836 | /* 35121*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17837 | MVT::v4i32, 3/*#Ops*/, 2, 1, 4, |
| 17838 | // Src: (ld:{ *:[v4i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi16>> - Complexity = 10 |
| 17839 | // Dst: (LOAD_EXTEND_U_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17840 | /* 35130*/ 0, /*End of Scope*/ |
| 17841 | /* 35131*/ /*Scope*/ 60, /*->35192*/ |
| 17842 | /* 35132*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 17843 | /* 35134*/ OPC_CheckPredicate, 17, // Predicate_sextloadvi32 |
| 17844 | /* 35136*/ OPC_CheckType, MVT::v2i64, |
| 17845 | /* 35138*/ OPC_Scope, 25, /*->35165*/ // 2 children in Scope |
| 17846 | /* 35140*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17847 | /* 35142*/ OPC_EmitMergeInputChains1_0, |
| 17848 | /* 35143*/ OPC_EmitInteger, MVT::i32, 0, |
| 17849 | /* 35146*/ OPC_EmitInteger, MVT::i32, 0, |
| 17850 | /* 35149*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17851 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17852 | /* 35156*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17853 | MVT::v2i64, 3/*#Ops*/, 2, 1, 4, |
| 17854 | // Src: (ld:{ *:[v2i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi32>> - Complexity = 10 |
| 17855 | // Dst: (LOAD_EXTEND_S_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17856 | /* 35165*/ /*Scope*/ 25, /*->35191*/ |
| 17857 | /* 35166*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17858 | /* 35168*/ OPC_EmitMergeInputChains1_0, |
| 17859 | /* 35169*/ OPC_EmitInteger, MVT::i32, 0, |
| 17860 | /* 35172*/ OPC_EmitInteger, MVT::i64, 0, |
| 17861 | /* 35175*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17862 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17863 | /* 35182*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17864 | MVT::v2i64, 3/*#Ops*/, 2, 1, 4, |
| 17865 | // Src: (ld:{ *:[v2i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi32>> - Complexity = 10 |
| 17866 | // Dst: (LOAD_EXTEND_S_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17867 | /* 35191*/ 0, /*End of Scope*/ |
| 17868 | /* 35192*/ /*Scope*/ 60, /*->35253*/ |
| 17869 | /* 35193*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 17870 | /* 35195*/ OPC_CheckPredicate, 17, // Predicate_zextloadvi32 |
| 17871 | /* 35197*/ OPC_CheckType, MVT::v2i64, |
| 17872 | /* 35199*/ OPC_Scope, 25, /*->35226*/ // 2 children in Scope |
| 17873 | /* 35201*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17874 | /* 35203*/ OPC_EmitMergeInputChains1_0, |
| 17875 | /* 35204*/ OPC_EmitInteger, MVT::i32, 0, |
| 17876 | /* 35207*/ OPC_EmitInteger, MVT::i32, 0, |
| 17877 | /* 35210*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17878 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17879 | /* 35217*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17880 | MVT::v2i64, 3/*#Ops*/, 2, 1, 4, |
| 17881 | // Src: (ld:{ *:[v2i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi32>> - Complexity = 10 |
| 17882 | // Dst: (LOAD_EXTEND_U_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17883 | /* 35226*/ /*Scope*/ 25, /*->35252*/ |
| 17884 | /* 35227*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17885 | /* 35229*/ OPC_EmitMergeInputChains1_0, |
| 17886 | /* 35230*/ OPC_EmitInteger, MVT::i32, 0, |
| 17887 | /* 35233*/ OPC_EmitInteger, MVT::i64, 0, |
| 17888 | /* 35236*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17889 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17890 | /* 35243*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17891 | MVT::v2i64, 3/*#Ops*/, 2, 1, 4, |
| 17892 | // Src: (ld:{ *:[v2i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi32>> - Complexity = 10 |
| 17893 | // Dst: (LOAD_EXTEND_U_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17894 | /* 35252*/ 0, /*End of Scope*/ |
| 17895 | /* 35253*/ /*Scope*/ 60, /*->35314*/ |
| 17896 | /* 35254*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 17897 | /* 35256*/ OPC_CheckPredicate, 17, // Predicate_extloadvi32 |
| 17898 | /* 35258*/ OPC_CheckType, MVT::v2i64, |
| 17899 | /* 35260*/ OPC_Scope, 25, /*->35287*/ // 2 children in Scope |
| 17900 | /* 35262*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17901 | /* 35264*/ OPC_EmitMergeInputChains1_0, |
| 17902 | /* 35265*/ OPC_EmitInteger, MVT::i32, 0, |
| 17903 | /* 35268*/ OPC_EmitInteger, MVT::i32, 0, |
| 17904 | /* 35271*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17905 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 17906 | /* 35278*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17907 | MVT::v2i64, 3/*#Ops*/, 2, 1, 4, |
| 17908 | // Src: (ld:{ *:[v2i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi32>> - Complexity = 10 |
| 17909 | // Dst: (LOAD_EXTEND_U_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17910 | /* 35287*/ /*Scope*/ 25, /*->35313*/ |
| 17911 | /* 35288*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 17912 | /* 35290*/ OPC_EmitMergeInputChains1_0, |
| 17913 | /* 35291*/ OPC_EmitInteger, MVT::i32, 0, |
| 17914 | /* 35294*/ OPC_EmitInteger, MVT::i64, 0, |
| 17915 | /* 35297*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17916 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 17917 | /* 35304*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17918 | MVT::v2i64, 3/*#Ops*/, 2, 1, 4, |
| 17919 | // Src: (ld:{ *:[v2i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi32>> - Complexity = 10 |
| 17920 | // Dst: (LOAD_EXTEND_U_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17921 | /* 35313*/ 0, /*End of Scope*/ |
| 17922 | /* 35314*/ 0, /*End of Scope*/ |
| 17923 | /* 35315*/ 0, // EndSwitchOpcode |
| 17924 | /* 35316*/ /*Scope*/ 73|128,11/*1481*/, /*->36799*/ |
| 17925 | /* 35318*/ OPC_RecordChild1, // #1 = $off |
| 17926 | /* 35319*/ OPC_Scope, 72|128,6/*840*/, /*->36162*/ // 3 children in Scope |
| 17927 | /* 35322*/ OPC_MoveChild1, |
| 17928 | /* 35323*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 17929 | /* 35326*/ OPC_MoveParent, |
| 17930 | /* 35327*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 17931 | /* 35329*/ OPC_Scope, 116|128,1/*244*/, /*->35576*/ // 10 children in Scope |
| 17932 | /* 35332*/ OPC_CheckPredicate, 11, // Predicate_load |
| 17933 | /* 35334*/ OPC_SwitchType /*4 cases */, 58, MVT::v16i8,// ->35395 |
| 17934 | /* 35337*/ OPC_Scope, 27, /*->35366*/ // 2 children in Scope |
| 17935 | /* 35339*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17936 | /* 35341*/ OPC_EmitMergeInputChains1_0, |
| 17937 | /* 35342*/ OPC_EmitInteger, MVT::i32, 0, |
| 17938 | /* 35345*/ OPC_EmitConvertToTarget, 1, |
| 17939 | /* 35347*/ OPC_EmitInteger, MVT::i32, 0, |
| 17940 | /* 35350*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17941 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 17942 | /* 35357*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17943 | MVT::v16i8, 3/*#Ops*/, 2, 3, 5, |
| 17944 | // Src: (ld:{ *:[v16i8] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 17945 | // Dst: (LOAD_V128_A32:{ *:[v16i8] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17946 | /* 35366*/ /*Scope*/ 27, /*->35394*/ |
| 17947 | /* 35367*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17948 | /* 35369*/ OPC_EmitMergeInputChains1_0, |
| 17949 | /* 35370*/ OPC_EmitInteger, MVT::i32, 0, |
| 17950 | /* 35373*/ OPC_EmitConvertToTarget, 1, |
| 17951 | /* 35375*/ OPC_EmitInteger, MVT::i64, 0, |
| 17952 | /* 35378*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17953 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 17954 | /* 35385*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17955 | MVT::v16i8, 3/*#Ops*/, 2, 3, 5, |
| 17956 | // Src: (ld:{ *:[v16i8] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 17957 | // Dst: (LOAD_V128_A64:{ *:[v16i8] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17958 | /* 35394*/ 0, /*End of Scope*/ |
| 17959 | /* 35395*/ /*SwitchType*/ 58, MVT::v8i16,// ->35455 |
| 17960 | /* 35397*/ OPC_Scope, 27, /*->35426*/ // 2 children in Scope |
| 17961 | /* 35399*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17962 | /* 35401*/ OPC_EmitMergeInputChains1_0, |
| 17963 | /* 35402*/ OPC_EmitInteger, MVT::i32, 0, |
| 17964 | /* 35405*/ OPC_EmitConvertToTarget, 1, |
| 17965 | /* 35407*/ OPC_EmitInteger, MVT::i32, 0, |
| 17966 | /* 35410*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17967 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 17968 | /* 35417*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17969 | MVT::v8i16, 3/*#Ops*/, 2, 3, 5, |
| 17970 | // Src: (ld:{ *:[v8i16] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 17971 | // Dst: (LOAD_V128_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17972 | /* 35426*/ /*Scope*/ 27, /*->35454*/ |
| 17973 | /* 35427*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 17974 | /* 35429*/ OPC_EmitMergeInputChains1_0, |
| 17975 | /* 35430*/ OPC_EmitInteger, MVT::i32, 0, |
| 17976 | /* 35433*/ OPC_EmitConvertToTarget, 1, |
| 17977 | /* 35435*/ OPC_EmitInteger, MVT::i64, 0, |
| 17978 | /* 35438*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 17979 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 17980 | /* 35445*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 17981 | MVT::v8i16, 3/*#Ops*/, 2, 3, 5, |
| 17982 | // Src: (ld:{ *:[v8i16] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 17983 | // Dst: (LOAD_V128_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 17984 | /* 35454*/ 0, /*End of Scope*/ |
| 17985 | /* 35455*/ /*SwitchType*/ 58, MVT::v4i32,// ->35515 |
| 17986 | /* 35457*/ OPC_Scope, 27, /*->35486*/ // 2 children in Scope |
| 17987 | /* 35459*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 17988 | /* 35461*/ OPC_EmitMergeInputChains1_0, |
| 17989 | /* 35462*/ OPC_EmitInteger, MVT::i32, 0, |
| 17990 | /* 35465*/ OPC_EmitConvertToTarget, 1, |
| 17991 | /* 35467*/ OPC_EmitInteger, MVT::i32, 0, |
| 17992 | /* 35470*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 17993 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 17994 | /* 35477*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 17995 | MVT::v4i32, 3/*#Ops*/, 2, 3, 5, |
| 17996 | // Src: (ld:{ *:[v4i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 17997 | // Dst: (LOAD_V128_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 17998 | /* 35486*/ /*Scope*/ 27, /*->35514*/ |
| 17999 | /* 35487*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18000 | /* 35489*/ OPC_EmitMergeInputChains1_0, |
| 18001 | /* 35490*/ OPC_EmitInteger, MVT::i32, 0, |
| 18002 | /* 35493*/ OPC_EmitConvertToTarget, 1, |
| 18003 | /* 35495*/ OPC_EmitInteger, MVT::i64, 0, |
| 18004 | /* 35498*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18005 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18006 | /* 35505*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18007 | MVT::v4i32, 3/*#Ops*/, 2, 3, 5, |
| 18008 | // Src: (ld:{ *:[v4i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 18009 | // Dst: (LOAD_V128_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18010 | /* 35514*/ 0, /*End of Scope*/ |
| 18011 | /* 35515*/ /*SwitchType*/ 58, MVT::v2i64,// ->35575 |
| 18012 | /* 35517*/ OPC_Scope, 27, /*->35546*/ // 2 children in Scope |
| 18013 | /* 35519*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18014 | /* 35521*/ OPC_EmitMergeInputChains1_0, |
| 18015 | /* 35522*/ OPC_EmitInteger, MVT::i32, 0, |
| 18016 | /* 35525*/ OPC_EmitConvertToTarget, 1, |
| 18017 | /* 35527*/ OPC_EmitInteger, MVT::i32, 0, |
| 18018 | /* 35530*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18019 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 18020 | /* 35537*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18021 | MVT::v2i64, 3/*#Ops*/, 2, 3, 5, |
| 18022 | // Src: (ld:{ *:[v2i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 18023 | // Dst: (LOAD_V128_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18024 | /* 35546*/ /*Scope*/ 27, /*->35574*/ |
| 18025 | /* 35547*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18026 | /* 35549*/ OPC_EmitMergeInputChains1_0, |
| 18027 | /* 35550*/ OPC_EmitInteger, MVT::i32, 0, |
| 18028 | /* 35553*/ OPC_EmitConvertToTarget, 1, |
| 18029 | /* 35555*/ OPC_EmitInteger, MVT::i64, 0, |
| 18030 | /* 35558*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18031 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18032 | /* 35565*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18033 | MVT::v2i64, 3/*#Ops*/, 2, 3, 5, |
| 18034 | // Src: (ld:{ *:[v2i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 18035 | // Dst: (LOAD_V128_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18036 | /* 35574*/ 0, /*End of Scope*/ |
| 18037 | /* 35575*/ 0, // EndSwitchType |
| 18038 | /* 35576*/ /*Scope*/ 64, /*->35641*/ |
| 18039 | /* 35577*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 18040 | /* 35579*/ OPC_CheckPredicate, 15, // Predicate_sextloadvi8 |
| 18041 | /* 35581*/ OPC_CheckType, MVT::v8i16, |
| 18042 | /* 35583*/ OPC_Scope, 27, /*->35612*/ // 2 children in Scope |
| 18043 | /* 35585*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18044 | /* 35587*/ OPC_EmitMergeInputChains1_0, |
| 18045 | /* 35588*/ OPC_EmitInteger, MVT::i32, 0, |
| 18046 | /* 35591*/ OPC_EmitConvertToTarget, 1, |
| 18047 | /* 35593*/ OPC_EmitInteger, MVT::i32, 0, |
| 18048 | /* 35596*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18049 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 18050 | /* 35603*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18051 | MVT::v8i16, 3/*#Ops*/, 2, 3, 5, |
| 18052 | // Src: (ld:{ *:[v8i16] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi8>> - Complexity = 7 |
| 18053 | // Dst: (LOAD_EXTEND_S_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18054 | /* 35612*/ /*Scope*/ 27, /*->35640*/ |
| 18055 | /* 35613*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18056 | /* 35615*/ OPC_EmitMergeInputChains1_0, |
| 18057 | /* 35616*/ OPC_EmitInteger, MVT::i32, 0, |
| 18058 | /* 35619*/ OPC_EmitConvertToTarget, 1, |
| 18059 | /* 35621*/ OPC_EmitInteger, MVT::i64, 0, |
| 18060 | /* 35624*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18061 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18062 | /* 35631*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18063 | MVT::v8i16, 3/*#Ops*/, 2, 3, 5, |
| 18064 | // Src: (ld:{ *:[v8i16] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi8>> - Complexity = 7 |
| 18065 | // Dst: (LOAD_EXTEND_S_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18066 | /* 35640*/ 0, /*End of Scope*/ |
| 18067 | /* 35641*/ /*Scope*/ 64, /*->35706*/ |
| 18068 | /* 35642*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 18069 | /* 35644*/ OPC_CheckPredicate, 15, // Predicate_zextloadvi8 |
| 18070 | /* 35646*/ OPC_CheckType, MVT::v8i16, |
| 18071 | /* 35648*/ OPC_Scope, 27, /*->35677*/ // 2 children in Scope |
| 18072 | /* 35650*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18073 | /* 35652*/ OPC_EmitMergeInputChains1_0, |
| 18074 | /* 35653*/ OPC_EmitInteger, MVT::i32, 0, |
| 18075 | /* 35656*/ OPC_EmitConvertToTarget, 1, |
| 18076 | /* 35658*/ OPC_EmitInteger, MVT::i32, 0, |
| 18077 | /* 35661*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18078 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 18079 | /* 35668*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18080 | MVT::v8i16, 3/*#Ops*/, 2, 3, 5, |
| 18081 | // Src: (ld:{ *:[v8i16] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi8>> - Complexity = 7 |
| 18082 | // Dst: (LOAD_EXTEND_U_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18083 | /* 35677*/ /*Scope*/ 27, /*->35705*/ |
| 18084 | /* 35678*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18085 | /* 35680*/ OPC_EmitMergeInputChains1_0, |
| 18086 | /* 35681*/ OPC_EmitInteger, MVT::i32, 0, |
| 18087 | /* 35684*/ OPC_EmitConvertToTarget, 1, |
| 18088 | /* 35686*/ OPC_EmitInteger, MVT::i64, 0, |
| 18089 | /* 35689*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18090 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18091 | /* 35696*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18092 | MVT::v8i16, 3/*#Ops*/, 2, 3, 5, |
| 18093 | // Src: (ld:{ *:[v8i16] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi8>> - Complexity = 7 |
| 18094 | // Dst: (LOAD_EXTEND_U_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18095 | /* 35705*/ 0, /*End of Scope*/ |
| 18096 | /* 35706*/ /*Scope*/ 64, /*->35771*/ |
| 18097 | /* 35707*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 18098 | /* 35709*/ OPC_CheckPredicate, 15, // Predicate_extloadvi8 |
| 18099 | /* 35711*/ OPC_CheckType, MVT::v8i16, |
| 18100 | /* 35713*/ OPC_Scope, 27, /*->35742*/ // 2 children in Scope |
| 18101 | /* 35715*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18102 | /* 35717*/ OPC_EmitMergeInputChains1_0, |
| 18103 | /* 35718*/ OPC_EmitInteger, MVT::i32, 0, |
| 18104 | /* 35721*/ OPC_EmitConvertToTarget, 1, |
| 18105 | /* 35723*/ OPC_EmitInteger, MVT::i32, 0, |
| 18106 | /* 35726*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18107 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 18108 | /* 35733*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18109 | MVT::v8i16, 3/*#Ops*/, 2, 3, 5, |
| 18110 | // Src: (ld:{ *:[v8i16] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi8>> - Complexity = 7 |
| 18111 | // Dst: (LOAD_EXTEND_U_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18112 | /* 35742*/ /*Scope*/ 27, /*->35770*/ |
| 18113 | /* 35743*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18114 | /* 35745*/ OPC_EmitMergeInputChains1_0, |
| 18115 | /* 35746*/ OPC_EmitInteger, MVT::i32, 0, |
| 18116 | /* 35749*/ OPC_EmitConvertToTarget, 1, |
| 18117 | /* 35751*/ OPC_EmitInteger, MVT::i64, 0, |
| 18118 | /* 35754*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18119 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18120 | /* 35761*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18121 | MVT::v8i16, 3/*#Ops*/, 2, 3, 5, |
| 18122 | // Src: (ld:{ *:[v8i16] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi8>> - Complexity = 7 |
| 18123 | // Dst: (LOAD_EXTEND_U_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18124 | /* 35770*/ 0, /*End of Scope*/ |
| 18125 | /* 35771*/ /*Scope*/ 64, /*->35836*/ |
| 18126 | /* 35772*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 18127 | /* 35774*/ OPC_CheckPredicate, 16, // Predicate_sextloadvi16 |
| 18128 | /* 35776*/ OPC_CheckType, MVT::v4i32, |
| 18129 | /* 35778*/ OPC_Scope, 27, /*->35807*/ // 2 children in Scope |
| 18130 | /* 35780*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18131 | /* 35782*/ OPC_EmitMergeInputChains1_0, |
| 18132 | /* 35783*/ OPC_EmitInteger, MVT::i32, 0, |
| 18133 | /* 35786*/ OPC_EmitConvertToTarget, 1, |
| 18134 | /* 35788*/ OPC_EmitInteger, MVT::i32, 0, |
| 18135 | /* 35791*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18136 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 18137 | /* 35798*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18138 | MVT::v4i32, 3/*#Ops*/, 2, 3, 5, |
| 18139 | // Src: (ld:{ *:[v4i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi16>> - Complexity = 7 |
| 18140 | // Dst: (LOAD_EXTEND_S_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18141 | /* 35807*/ /*Scope*/ 27, /*->35835*/ |
| 18142 | /* 35808*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18143 | /* 35810*/ OPC_EmitMergeInputChains1_0, |
| 18144 | /* 35811*/ OPC_EmitInteger, MVT::i32, 0, |
| 18145 | /* 35814*/ OPC_EmitConvertToTarget, 1, |
| 18146 | /* 35816*/ OPC_EmitInteger, MVT::i64, 0, |
| 18147 | /* 35819*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18148 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18149 | /* 35826*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18150 | MVT::v4i32, 3/*#Ops*/, 2, 3, 5, |
| 18151 | // Src: (ld:{ *:[v4i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi16>> - Complexity = 7 |
| 18152 | // Dst: (LOAD_EXTEND_S_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18153 | /* 35835*/ 0, /*End of Scope*/ |
| 18154 | /* 35836*/ /*Scope*/ 64, /*->35901*/ |
| 18155 | /* 35837*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 18156 | /* 35839*/ OPC_CheckPredicate, 16, // Predicate_zextloadvi16 |
| 18157 | /* 35841*/ OPC_CheckType, MVT::v4i32, |
| 18158 | /* 35843*/ OPC_Scope, 27, /*->35872*/ // 2 children in Scope |
| 18159 | /* 35845*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18160 | /* 35847*/ OPC_EmitMergeInputChains1_0, |
| 18161 | /* 35848*/ OPC_EmitInteger, MVT::i32, 0, |
| 18162 | /* 35851*/ OPC_EmitConvertToTarget, 1, |
| 18163 | /* 35853*/ OPC_EmitInteger, MVT::i32, 0, |
| 18164 | /* 35856*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18165 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 18166 | /* 35863*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18167 | MVT::v4i32, 3/*#Ops*/, 2, 3, 5, |
| 18168 | // Src: (ld:{ *:[v4i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi16>> - Complexity = 7 |
| 18169 | // Dst: (LOAD_EXTEND_U_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18170 | /* 35872*/ /*Scope*/ 27, /*->35900*/ |
| 18171 | /* 35873*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18172 | /* 35875*/ OPC_EmitMergeInputChains1_0, |
| 18173 | /* 35876*/ OPC_EmitInteger, MVT::i32, 0, |
| 18174 | /* 35879*/ OPC_EmitConvertToTarget, 1, |
| 18175 | /* 35881*/ OPC_EmitInteger, MVT::i64, 0, |
| 18176 | /* 35884*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18177 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18178 | /* 35891*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18179 | MVT::v4i32, 3/*#Ops*/, 2, 3, 5, |
| 18180 | // Src: (ld:{ *:[v4i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi16>> - Complexity = 7 |
| 18181 | // Dst: (LOAD_EXTEND_U_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18182 | /* 35900*/ 0, /*End of Scope*/ |
| 18183 | /* 35901*/ /*Scope*/ 64, /*->35966*/ |
| 18184 | /* 35902*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 18185 | /* 35904*/ OPC_CheckPredicate, 16, // Predicate_extloadvi16 |
| 18186 | /* 35906*/ OPC_CheckType, MVT::v4i32, |
| 18187 | /* 35908*/ OPC_Scope, 27, /*->35937*/ // 2 children in Scope |
| 18188 | /* 35910*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18189 | /* 35912*/ OPC_EmitMergeInputChains1_0, |
| 18190 | /* 35913*/ OPC_EmitInteger, MVT::i32, 0, |
| 18191 | /* 35916*/ OPC_EmitConvertToTarget, 1, |
| 18192 | /* 35918*/ OPC_EmitInteger, MVT::i32, 0, |
| 18193 | /* 35921*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18194 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 18195 | /* 35928*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18196 | MVT::v4i32, 3/*#Ops*/, 2, 3, 5, |
| 18197 | // Src: (ld:{ *:[v4i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi16>> - Complexity = 7 |
| 18198 | // Dst: (LOAD_EXTEND_U_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18199 | /* 35937*/ /*Scope*/ 27, /*->35965*/ |
| 18200 | /* 35938*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18201 | /* 35940*/ OPC_EmitMergeInputChains1_0, |
| 18202 | /* 35941*/ OPC_EmitInteger, MVT::i32, 0, |
| 18203 | /* 35944*/ OPC_EmitConvertToTarget, 1, |
| 18204 | /* 35946*/ OPC_EmitInteger, MVT::i64, 0, |
| 18205 | /* 35949*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18206 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18207 | /* 35956*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18208 | MVT::v4i32, 3/*#Ops*/, 2, 3, 5, |
| 18209 | // Src: (ld:{ *:[v4i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi16>> - Complexity = 7 |
| 18210 | // Dst: (LOAD_EXTEND_U_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18211 | /* 35965*/ 0, /*End of Scope*/ |
| 18212 | /* 35966*/ /*Scope*/ 64, /*->36031*/ |
| 18213 | /* 35967*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 18214 | /* 35969*/ OPC_CheckPredicate, 17, // Predicate_sextloadvi32 |
| 18215 | /* 35971*/ OPC_CheckType, MVT::v2i64, |
| 18216 | /* 35973*/ OPC_Scope, 27, /*->36002*/ // 2 children in Scope |
| 18217 | /* 35975*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18218 | /* 35977*/ OPC_EmitMergeInputChains1_0, |
| 18219 | /* 35978*/ OPC_EmitInteger, MVT::i32, 0, |
| 18220 | /* 35981*/ OPC_EmitConvertToTarget, 1, |
| 18221 | /* 35983*/ OPC_EmitInteger, MVT::i32, 0, |
| 18222 | /* 35986*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18223 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 18224 | /* 35993*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18225 | MVT::v2i64, 3/*#Ops*/, 2, 3, 5, |
| 18226 | // Src: (ld:{ *:[v2i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi32>> - Complexity = 7 |
| 18227 | // Dst: (LOAD_EXTEND_S_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18228 | /* 36002*/ /*Scope*/ 27, /*->36030*/ |
| 18229 | /* 36003*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18230 | /* 36005*/ OPC_EmitMergeInputChains1_0, |
| 18231 | /* 36006*/ OPC_EmitInteger, MVT::i32, 0, |
| 18232 | /* 36009*/ OPC_EmitConvertToTarget, 1, |
| 18233 | /* 36011*/ OPC_EmitInteger, MVT::i64, 0, |
| 18234 | /* 36014*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18235 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18236 | /* 36021*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18237 | MVT::v2i64, 3/*#Ops*/, 2, 3, 5, |
| 18238 | // Src: (ld:{ *:[v2i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi32>> - Complexity = 7 |
| 18239 | // Dst: (LOAD_EXTEND_S_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18240 | /* 36030*/ 0, /*End of Scope*/ |
| 18241 | /* 36031*/ /*Scope*/ 64, /*->36096*/ |
| 18242 | /* 36032*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 18243 | /* 36034*/ OPC_CheckPredicate, 17, // Predicate_zextloadvi32 |
| 18244 | /* 36036*/ OPC_CheckType, MVT::v2i64, |
| 18245 | /* 36038*/ OPC_Scope, 27, /*->36067*/ // 2 children in Scope |
| 18246 | /* 36040*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18247 | /* 36042*/ OPC_EmitMergeInputChains1_0, |
| 18248 | /* 36043*/ OPC_EmitInteger, MVT::i32, 0, |
| 18249 | /* 36046*/ OPC_EmitConvertToTarget, 1, |
| 18250 | /* 36048*/ OPC_EmitInteger, MVT::i32, 0, |
| 18251 | /* 36051*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18252 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 18253 | /* 36058*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18254 | MVT::v2i64, 3/*#Ops*/, 2, 3, 5, |
| 18255 | // Src: (ld:{ *:[v2i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi32>> - Complexity = 7 |
| 18256 | // Dst: (LOAD_EXTEND_U_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18257 | /* 36067*/ /*Scope*/ 27, /*->36095*/ |
| 18258 | /* 36068*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18259 | /* 36070*/ OPC_EmitMergeInputChains1_0, |
| 18260 | /* 36071*/ OPC_EmitInteger, MVT::i32, 0, |
| 18261 | /* 36074*/ OPC_EmitConvertToTarget, 1, |
| 18262 | /* 36076*/ OPC_EmitInteger, MVT::i64, 0, |
| 18263 | /* 36079*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18264 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18265 | /* 36086*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18266 | MVT::v2i64, 3/*#Ops*/, 2, 3, 5, |
| 18267 | // Src: (ld:{ *:[v2i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi32>> - Complexity = 7 |
| 18268 | // Dst: (LOAD_EXTEND_U_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18269 | /* 36095*/ 0, /*End of Scope*/ |
| 18270 | /* 36096*/ /*Scope*/ 64, /*->36161*/ |
| 18271 | /* 36097*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 18272 | /* 36099*/ OPC_CheckPredicate, 17, // Predicate_extloadvi32 |
| 18273 | /* 36101*/ OPC_CheckType, MVT::v2i64, |
| 18274 | /* 36103*/ OPC_Scope, 27, /*->36132*/ // 2 children in Scope |
| 18275 | /* 36105*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18276 | /* 36107*/ OPC_EmitMergeInputChains1_0, |
| 18277 | /* 36108*/ OPC_EmitInteger, MVT::i32, 0, |
| 18278 | /* 36111*/ OPC_EmitConvertToTarget, 1, |
| 18279 | /* 36113*/ OPC_EmitInteger, MVT::i32, 0, |
| 18280 | /* 36116*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18281 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 18282 | /* 36123*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18283 | MVT::v2i64, 3/*#Ops*/, 2, 3, 5, |
| 18284 | // Src: (ld:{ *:[v2i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi32>> - Complexity = 7 |
| 18285 | // Dst: (LOAD_EXTEND_U_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18286 | /* 36132*/ /*Scope*/ 27, /*->36160*/ |
| 18287 | /* 36133*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18288 | /* 36135*/ OPC_EmitMergeInputChains1_0, |
| 18289 | /* 36136*/ OPC_EmitInteger, MVT::i32, 0, |
| 18290 | /* 36139*/ OPC_EmitConvertToTarget, 1, |
| 18291 | /* 36141*/ OPC_EmitInteger, MVT::i64, 0, |
| 18292 | /* 36144*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18293 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18294 | /* 36151*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18295 | MVT::v2i64, 3/*#Ops*/, 2, 3, 5, |
| 18296 | // Src: (ld:{ *:[v2i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi32>> - Complexity = 7 |
| 18297 | // Dst: (LOAD_EXTEND_U_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18298 | /* 36160*/ 0, /*End of Scope*/ |
| 18299 | /* 36161*/ 0, /*End of Scope*/ |
| 18300 | /* 36162*/ /*Scope*/ 60|128,2/*316*/, /*->36480*/ |
| 18301 | /* 36164*/ OPC_CheckChild1Type, MVT::i32, |
| 18302 | /* 36166*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 18303 | /* 36168*/ OPC_Scope, 84, /*->36254*/ // 10 children in Scope |
| 18304 | /* 36170*/ OPC_CheckPredicate, 11, // Predicate_load |
| 18305 | /* 36172*/ OPC_SwitchType /*4 cases */, 18, MVT::v16i8,// ->36193 |
| 18306 | /* 36175*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18307 | /* 36177*/ OPC_EmitMergeInputChains1_0, |
| 18308 | /* 36178*/ OPC_EmitInteger, MVT::i32, 0, |
| 18309 | /* 36181*/ OPC_EmitInteger, MVT::i32, 0, |
| 18310 | /* 36184*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18311 | MVT::v16i8, 3/*#Ops*/, 2, 3, 1, |
| 18312 | // Src: (ld:{ *:[v16i8] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 18313 | // Dst: (LOAD_V128_A32:{ *:[v16i8] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18314 | /* 36193*/ /*SwitchType*/ 18, MVT::v8i16,// ->36213 |
| 18315 | /* 36195*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18316 | /* 36197*/ OPC_EmitMergeInputChains1_0, |
| 18317 | /* 36198*/ OPC_EmitInteger, MVT::i32, 0, |
| 18318 | /* 36201*/ OPC_EmitInteger, MVT::i32, 0, |
| 18319 | /* 36204*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18320 | MVT::v8i16, 3/*#Ops*/, 2, 3, 1, |
| 18321 | // Src: (ld:{ *:[v8i16] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 18322 | // Dst: (LOAD_V128_A32:{ *:[v8i16] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18323 | /* 36213*/ /*SwitchType*/ 18, MVT::v4i32,// ->36233 |
| 18324 | /* 36215*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18325 | /* 36217*/ OPC_EmitMergeInputChains1_0, |
| 18326 | /* 36218*/ OPC_EmitInteger, MVT::i32, 0, |
| 18327 | /* 36221*/ OPC_EmitInteger, MVT::i32, 0, |
| 18328 | /* 36224*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18329 | MVT::v4i32, 3/*#Ops*/, 2, 3, 1, |
| 18330 | // Src: (ld:{ *:[v4i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 18331 | // Dst: (LOAD_V128_A32:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18332 | /* 36233*/ /*SwitchType*/ 18, MVT::v2i64,// ->36253 |
| 18333 | /* 36235*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18334 | /* 36237*/ OPC_EmitMergeInputChains1_0, |
| 18335 | /* 36238*/ OPC_EmitInteger, MVT::i32, 0, |
| 18336 | /* 36241*/ OPC_EmitInteger, MVT::i32, 0, |
| 18337 | /* 36244*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18338 | MVT::v2i64, 3/*#Ops*/, 2, 3, 1, |
| 18339 | // Src: (ld:{ *:[v2i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 18340 | // Dst: (LOAD_V128_A32:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18341 | /* 36253*/ 0, // EndSwitchType |
| 18342 | /* 36254*/ /*Scope*/ 24, /*->36279*/ |
| 18343 | /* 36255*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 18344 | /* 36257*/ OPC_CheckPredicate, 15, // Predicate_sextloadvi8 |
| 18345 | /* 36259*/ OPC_CheckType, MVT::v8i16, |
| 18346 | /* 36261*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18347 | /* 36263*/ OPC_EmitMergeInputChains1_0, |
| 18348 | /* 36264*/ OPC_EmitInteger, MVT::i32, 0, |
| 18349 | /* 36267*/ OPC_EmitInteger, MVT::i32, 0, |
| 18350 | /* 36270*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18351 | MVT::v8i16, 3/*#Ops*/, 2, 3, 1, |
| 18352 | // Src: (ld:{ *:[v8i16] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi8>> - Complexity = 4 |
| 18353 | // Dst: (LOAD_EXTEND_S_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18354 | /* 36279*/ /*Scope*/ 24, /*->36304*/ |
| 18355 | /* 36280*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 18356 | /* 36282*/ OPC_CheckPredicate, 15, // Predicate_zextloadvi8 |
| 18357 | /* 36284*/ OPC_CheckType, MVT::v8i16, |
| 18358 | /* 36286*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18359 | /* 36288*/ OPC_EmitMergeInputChains1_0, |
| 18360 | /* 36289*/ OPC_EmitInteger, MVT::i32, 0, |
| 18361 | /* 36292*/ OPC_EmitInteger, MVT::i32, 0, |
| 18362 | /* 36295*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18363 | MVT::v8i16, 3/*#Ops*/, 2, 3, 1, |
| 18364 | // Src: (ld:{ *:[v8i16] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi8>> - Complexity = 4 |
| 18365 | // Dst: (LOAD_EXTEND_U_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18366 | /* 36304*/ /*Scope*/ 24, /*->36329*/ |
| 18367 | /* 36305*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 18368 | /* 36307*/ OPC_CheckPredicate, 15, // Predicate_extloadvi8 |
| 18369 | /* 36309*/ OPC_CheckType, MVT::v8i16, |
| 18370 | /* 36311*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18371 | /* 36313*/ OPC_EmitMergeInputChains1_0, |
| 18372 | /* 36314*/ OPC_EmitInteger, MVT::i32, 0, |
| 18373 | /* 36317*/ OPC_EmitInteger, MVT::i32, 0, |
| 18374 | /* 36320*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18375 | MVT::v8i16, 3/*#Ops*/, 2, 3, 1, |
| 18376 | // Src: (ld:{ *:[v8i16] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi8>> - Complexity = 4 |
| 18377 | // Dst: (LOAD_EXTEND_U_I16x8_A32:{ *:[v8i16] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18378 | /* 36329*/ /*Scope*/ 24, /*->36354*/ |
| 18379 | /* 36330*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 18380 | /* 36332*/ OPC_CheckPredicate, 16, // Predicate_sextloadvi16 |
| 18381 | /* 36334*/ OPC_CheckType, MVT::v4i32, |
| 18382 | /* 36336*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18383 | /* 36338*/ OPC_EmitMergeInputChains1_0, |
| 18384 | /* 36339*/ OPC_EmitInteger, MVT::i32, 0, |
| 18385 | /* 36342*/ OPC_EmitInteger, MVT::i32, 0, |
| 18386 | /* 36345*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18387 | MVT::v4i32, 3/*#Ops*/, 2, 3, 1, |
| 18388 | // Src: (ld:{ *:[v4i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi16>> - Complexity = 4 |
| 18389 | // Dst: (LOAD_EXTEND_S_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18390 | /* 36354*/ /*Scope*/ 24, /*->36379*/ |
| 18391 | /* 36355*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 18392 | /* 36357*/ OPC_CheckPredicate, 16, // Predicate_zextloadvi16 |
| 18393 | /* 36359*/ OPC_CheckType, MVT::v4i32, |
| 18394 | /* 36361*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18395 | /* 36363*/ OPC_EmitMergeInputChains1_0, |
| 18396 | /* 36364*/ OPC_EmitInteger, MVT::i32, 0, |
| 18397 | /* 36367*/ OPC_EmitInteger, MVT::i32, 0, |
| 18398 | /* 36370*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18399 | MVT::v4i32, 3/*#Ops*/, 2, 3, 1, |
| 18400 | // Src: (ld:{ *:[v4i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi16>> - Complexity = 4 |
| 18401 | // Dst: (LOAD_EXTEND_U_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18402 | /* 36379*/ /*Scope*/ 24, /*->36404*/ |
| 18403 | /* 36380*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 18404 | /* 36382*/ OPC_CheckPredicate, 16, // Predicate_extloadvi16 |
| 18405 | /* 36384*/ OPC_CheckType, MVT::v4i32, |
| 18406 | /* 36386*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18407 | /* 36388*/ OPC_EmitMergeInputChains1_0, |
| 18408 | /* 36389*/ OPC_EmitInteger, MVT::i32, 0, |
| 18409 | /* 36392*/ OPC_EmitInteger, MVT::i32, 0, |
| 18410 | /* 36395*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18411 | MVT::v4i32, 3/*#Ops*/, 2, 3, 1, |
| 18412 | // Src: (ld:{ *:[v4i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi16>> - Complexity = 4 |
| 18413 | // Dst: (LOAD_EXTEND_U_I32x4_A32:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18414 | /* 36404*/ /*Scope*/ 24, /*->36429*/ |
| 18415 | /* 36405*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 18416 | /* 36407*/ OPC_CheckPredicate, 17, // Predicate_sextloadvi32 |
| 18417 | /* 36409*/ OPC_CheckType, MVT::v2i64, |
| 18418 | /* 36411*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18419 | /* 36413*/ OPC_EmitMergeInputChains1_0, |
| 18420 | /* 36414*/ OPC_EmitInteger, MVT::i32, 0, |
| 18421 | /* 36417*/ OPC_EmitInteger, MVT::i32, 0, |
| 18422 | /* 36420*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18423 | MVT::v2i64, 3/*#Ops*/, 2, 3, 1, |
| 18424 | // Src: (ld:{ *:[v2i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi32>> - Complexity = 4 |
| 18425 | // Dst: (LOAD_EXTEND_S_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18426 | /* 36429*/ /*Scope*/ 24, /*->36454*/ |
| 18427 | /* 36430*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 18428 | /* 36432*/ OPC_CheckPredicate, 17, // Predicate_zextloadvi32 |
| 18429 | /* 36434*/ OPC_CheckType, MVT::v2i64, |
| 18430 | /* 36436*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18431 | /* 36438*/ OPC_EmitMergeInputChains1_0, |
| 18432 | /* 36439*/ OPC_EmitInteger, MVT::i32, 0, |
| 18433 | /* 36442*/ OPC_EmitInteger, MVT::i32, 0, |
| 18434 | /* 36445*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18435 | MVT::v2i64, 3/*#Ops*/, 2, 3, 1, |
| 18436 | // Src: (ld:{ *:[v2i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi32>> - Complexity = 4 |
| 18437 | // Dst: (LOAD_EXTEND_U_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18438 | /* 36454*/ /*Scope*/ 24, /*->36479*/ |
| 18439 | /* 36455*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 18440 | /* 36457*/ OPC_CheckPredicate, 17, // Predicate_extloadvi32 |
| 18441 | /* 36459*/ OPC_CheckType, MVT::v2i64, |
| 18442 | /* 36461*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18443 | /* 36463*/ OPC_EmitMergeInputChains1_0, |
| 18444 | /* 36464*/ OPC_EmitInteger, MVT::i32, 0, |
| 18445 | /* 36467*/ OPC_EmitInteger, MVT::i32, 0, |
| 18446 | /* 36470*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18447 | MVT::v2i64, 3/*#Ops*/, 2, 3, 1, |
| 18448 | // Src: (ld:{ *:[v2i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi32>> - Complexity = 4 |
| 18449 | // Dst: (LOAD_EXTEND_U_I64x2_A32:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18450 | /* 36479*/ 0, /*End of Scope*/ |
| 18451 | /* 36480*/ /*Scope*/ 60|128,2/*316*/, /*->36798*/ |
| 18452 | /* 36482*/ OPC_CheckChild1Type, MVT::i64, |
| 18453 | /* 36484*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 18454 | /* 36486*/ OPC_Scope, 84, /*->36572*/ // 10 children in Scope |
| 18455 | /* 36488*/ OPC_CheckPredicate, 11, // Predicate_load |
| 18456 | /* 36490*/ OPC_SwitchType /*4 cases */, 18, MVT::v16i8,// ->36511 |
| 18457 | /* 36493*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18458 | /* 36495*/ OPC_EmitMergeInputChains1_0, |
| 18459 | /* 36496*/ OPC_EmitInteger, MVT::i32, 0, |
| 18460 | /* 36499*/ OPC_EmitInteger, MVT::i64, 0, |
| 18461 | /* 36502*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18462 | MVT::v16i8, 3/*#Ops*/, 2, 3, 1, |
| 18463 | // Src: (ld:{ *:[v16i8] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 18464 | // Dst: (LOAD_V128_A64:{ *:[v16i8] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18465 | /* 36511*/ /*SwitchType*/ 18, MVT::v8i16,// ->36531 |
| 18466 | /* 36513*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18467 | /* 36515*/ OPC_EmitMergeInputChains1_0, |
| 18468 | /* 36516*/ OPC_EmitInteger, MVT::i32, 0, |
| 18469 | /* 36519*/ OPC_EmitInteger, MVT::i64, 0, |
| 18470 | /* 36522*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18471 | MVT::v8i16, 3/*#Ops*/, 2, 3, 1, |
| 18472 | // Src: (ld:{ *:[v8i16] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 18473 | // Dst: (LOAD_V128_A64:{ *:[v8i16] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18474 | /* 36531*/ /*SwitchType*/ 18, MVT::v4i32,// ->36551 |
| 18475 | /* 36533*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18476 | /* 36535*/ OPC_EmitMergeInputChains1_0, |
| 18477 | /* 36536*/ OPC_EmitInteger, MVT::i32, 0, |
| 18478 | /* 36539*/ OPC_EmitInteger, MVT::i64, 0, |
| 18479 | /* 36542*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18480 | MVT::v4i32, 3/*#Ops*/, 2, 3, 1, |
| 18481 | // Src: (ld:{ *:[v4i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 18482 | // Dst: (LOAD_V128_A64:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18483 | /* 36551*/ /*SwitchType*/ 18, MVT::v2i64,// ->36571 |
| 18484 | /* 36553*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18485 | /* 36555*/ OPC_EmitMergeInputChains1_0, |
| 18486 | /* 36556*/ OPC_EmitInteger, MVT::i32, 0, |
| 18487 | /* 36559*/ OPC_EmitInteger, MVT::i64, 0, |
| 18488 | /* 36562*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18489 | MVT::v2i64, 3/*#Ops*/, 2, 3, 1, |
| 18490 | // Src: (ld:{ *:[v2i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 18491 | // Dst: (LOAD_V128_A64:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18492 | /* 36571*/ 0, // EndSwitchType |
| 18493 | /* 36572*/ /*Scope*/ 24, /*->36597*/ |
| 18494 | /* 36573*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 18495 | /* 36575*/ OPC_CheckPredicate, 15, // Predicate_sextloadvi8 |
| 18496 | /* 36577*/ OPC_CheckType, MVT::v8i16, |
| 18497 | /* 36579*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18498 | /* 36581*/ OPC_EmitMergeInputChains1_0, |
| 18499 | /* 36582*/ OPC_EmitInteger, MVT::i32, 0, |
| 18500 | /* 36585*/ OPC_EmitInteger, MVT::i64, 0, |
| 18501 | /* 36588*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18502 | MVT::v8i16, 3/*#Ops*/, 2, 3, 1, |
| 18503 | // Src: (ld:{ *:[v8i16] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi8>> - Complexity = 4 |
| 18504 | // Dst: (LOAD_EXTEND_S_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18505 | /* 36597*/ /*Scope*/ 24, /*->36622*/ |
| 18506 | /* 36598*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 18507 | /* 36600*/ OPC_CheckPredicate, 15, // Predicate_zextloadvi8 |
| 18508 | /* 36602*/ OPC_CheckType, MVT::v8i16, |
| 18509 | /* 36604*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18510 | /* 36606*/ OPC_EmitMergeInputChains1_0, |
| 18511 | /* 36607*/ OPC_EmitInteger, MVT::i32, 0, |
| 18512 | /* 36610*/ OPC_EmitInteger, MVT::i64, 0, |
| 18513 | /* 36613*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18514 | MVT::v8i16, 3/*#Ops*/, 2, 3, 1, |
| 18515 | // Src: (ld:{ *:[v8i16] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi8>> - Complexity = 4 |
| 18516 | // Dst: (LOAD_EXTEND_U_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18517 | /* 36622*/ /*Scope*/ 24, /*->36647*/ |
| 18518 | /* 36623*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 18519 | /* 36625*/ OPC_CheckPredicate, 15, // Predicate_extloadvi8 |
| 18520 | /* 36627*/ OPC_CheckType, MVT::v8i16, |
| 18521 | /* 36629*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18522 | /* 36631*/ OPC_EmitMergeInputChains1_0, |
| 18523 | /* 36632*/ OPC_EmitInteger, MVT::i32, 0, |
| 18524 | /* 36635*/ OPC_EmitInteger, MVT::i64, 0, |
| 18525 | /* 36638*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18526 | MVT::v8i16, 3/*#Ops*/, 2, 3, 1, |
| 18527 | // Src: (ld:{ *:[v8i16] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi8>> - Complexity = 4 |
| 18528 | // Dst: (LOAD_EXTEND_U_I16x8_A64:{ *:[v8i16] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18529 | /* 36647*/ /*Scope*/ 24, /*->36672*/ |
| 18530 | /* 36648*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 18531 | /* 36650*/ OPC_CheckPredicate, 16, // Predicate_sextloadvi16 |
| 18532 | /* 36652*/ OPC_CheckType, MVT::v4i32, |
| 18533 | /* 36654*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18534 | /* 36656*/ OPC_EmitMergeInputChains1_0, |
| 18535 | /* 36657*/ OPC_EmitInteger, MVT::i32, 0, |
| 18536 | /* 36660*/ OPC_EmitInteger, MVT::i64, 0, |
| 18537 | /* 36663*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18538 | MVT::v4i32, 3/*#Ops*/, 2, 3, 1, |
| 18539 | // Src: (ld:{ *:[v4i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi16>> - Complexity = 4 |
| 18540 | // Dst: (LOAD_EXTEND_S_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18541 | /* 36672*/ /*Scope*/ 24, /*->36697*/ |
| 18542 | /* 36673*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 18543 | /* 36675*/ OPC_CheckPredicate, 16, // Predicate_zextloadvi16 |
| 18544 | /* 36677*/ OPC_CheckType, MVT::v4i32, |
| 18545 | /* 36679*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18546 | /* 36681*/ OPC_EmitMergeInputChains1_0, |
| 18547 | /* 36682*/ OPC_EmitInteger, MVT::i32, 0, |
| 18548 | /* 36685*/ OPC_EmitInteger, MVT::i64, 0, |
| 18549 | /* 36688*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18550 | MVT::v4i32, 3/*#Ops*/, 2, 3, 1, |
| 18551 | // Src: (ld:{ *:[v4i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi16>> - Complexity = 4 |
| 18552 | // Dst: (LOAD_EXTEND_U_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18553 | /* 36697*/ /*Scope*/ 24, /*->36722*/ |
| 18554 | /* 36698*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 18555 | /* 36700*/ OPC_CheckPredicate, 16, // Predicate_extloadvi16 |
| 18556 | /* 36702*/ OPC_CheckType, MVT::v4i32, |
| 18557 | /* 36704*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18558 | /* 36706*/ OPC_EmitMergeInputChains1_0, |
| 18559 | /* 36707*/ OPC_EmitInteger, MVT::i32, 0, |
| 18560 | /* 36710*/ OPC_EmitInteger, MVT::i64, 0, |
| 18561 | /* 36713*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18562 | MVT::v4i32, 3/*#Ops*/, 2, 3, 1, |
| 18563 | // Src: (ld:{ *:[v4i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi16>> - Complexity = 4 |
| 18564 | // Dst: (LOAD_EXTEND_U_I32x4_A64:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18565 | /* 36722*/ /*Scope*/ 24, /*->36747*/ |
| 18566 | /* 36723*/ OPC_CheckPredicate, 12, // Predicate_sextload |
| 18567 | /* 36725*/ OPC_CheckPredicate, 17, // Predicate_sextloadvi32 |
| 18568 | /* 36727*/ OPC_CheckType, MVT::v2i64, |
| 18569 | /* 36729*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18570 | /* 36731*/ OPC_EmitMergeInputChains1_0, |
| 18571 | /* 36732*/ OPC_EmitInteger, MVT::i32, 0, |
| 18572 | /* 36735*/ OPC_EmitInteger, MVT::i64, 0, |
| 18573 | /* 36738*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18574 | MVT::v2i64, 3/*#Ops*/, 2, 3, 1, |
| 18575 | // Src: (ld:{ *:[v2i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadvi32>> - Complexity = 4 |
| 18576 | // Dst: (LOAD_EXTEND_S_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18577 | /* 36747*/ /*Scope*/ 24, /*->36772*/ |
| 18578 | /* 36748*/ OPC_CheckPredicate, 13, // Predicate_zextload |
| 18579 | /* 36750*/ OPC_CheckPredicate, 17, // Predicate_zextloadvi32 |
| 18580 | /* 36752*/ OPC_CheckType, MVT::v2i64, |
| 18581 | /* 36754*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18582 | /* 36756*/ OPC_EmitMergeInputChains1_0, |
| 18583 | /* 36757*/ OPC_EmitInteger, MVT::i32, 0, |
| 18584 | /* 36760*/ OPC_EmitInteger, MVT::i64, 0, |
| 18585 | /* 36763*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18586 | MVT::v2i64, 3/*#Ops*/, 2, 3, 1, |
| 18587 | // Src: (ld:{ *:[v2i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadvi32>> - Complexity = 4 |
| 18588 | // Dst: (LOAD_EXTEND_U_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18589 | /* 36772*/ /*Scope*/ 24, /*->36797*/ |
| 18590 | /* 36773*/ OPC_CheckPredicate, 14, // Predicate_extload |
| 18591 | /* 36775*/ OPC_CheckPredicate, 17, // Predicate_extloadvi32 |
| 18592 | /* 36777*/ OPC_CheckType, MVT::v2i64, |
| 18593 | /* 36779*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18594 | /* 36781*/ OPC_EmitMergeInputChains1_0, |
| 18595 | /* 36782*/ OPC_EmitInteger, MVT::i32, 0, |
| 18596 | /* 36785*/ OPC_EmitInteger, MVT::i64, 0, |
| 18597 | /* 36788*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18598 | MVT::v2i64, 3/*#Ops*/, 2, 3, 1, |
| 18599 | // Src: (ld:{ *:[v2i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadvi32>> - Complexity = 4 |
| 18600 | // Dst: (LOAD_EXTEND_U_I64x2_A64:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18601 | /* 36797*/ 0, /*End of Scope*/ |
| 18602 | /* 36798*/ 0, /*End of Scope*/ |
| 18603 | /* 36799*/ /*Scope*/ 91|128,2/*347*/, /*->37148*/ |
| 18604 | /* 36801*/ OPC_MoveChild1, |
| 18605 | /* 36802*/ OPC_SwitchOpcode /*3 cases */, 105, TARGET_VAL(ISD::ADD),// ->36911 |
| 18606 | /* 36806*/ OPC_RecordChild0, // #1 = $addr |
| 18607 | /* 36807*/ OPC_RecordChild1, // #2 = $off |
| 18608 | /* 36808*/ OPC_MoveChild1, |
| 18609 | /* 36809*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 18610 | /* 36812*/ OPC_MoveParent, |
| 18611 | /* 36813*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 18612 | /* 36815*/ OPC_SwitchType /*2 cases */, 45, MVT::i32,// ->36863 |
| 18613 | /* 36818*/ OPC_MoveParent, |
| 18614 | /* 36819*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 18615 | /* 36821*/ OPC_CheckPredicate, 11, // Predicate_load |
| 18616 | /* 36823*/ OPC_SwitchType /*2 cases */, 17, MVT::v4f32,// ->36843 |
| 18617 | /* 36826*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18618 | /* 36828*/ OPC_EmitMergeInputChains1_0, |
| 18619 | /* 36829*/ OPC_EmitInteger, MVT::i32, 0, |
| 18620 | /* 36832*/ OPC_EmitConvertToTarget, 2, |
| 18621 | /* 36834*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18622 | MVT::v4f32, 3/*#Ops*/, 3, 4, 1, |
| 18623 | // Src: (ld:{ *:[v4f32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 18624 | // Dst: (LOAD_V128_A32:{ *:[v4f32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 18625 | /* 36843*/ /*SwitchType*/ 17, MVT::v2f64,// ->36862 |
| 18626 | /* 36845*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18627 | /* 36847*/ OPC_EmitMergeInputChains1_0, |
| 18628 | /* 36848*/ OPC_EmitInteger, MVT::i32, 0, |
| 18629 | /* 36851*/ OPC_EmitConvertToTarget, 2, |
| 18630 | /* 36853*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18631 | MVT::v2f64, 3/*#Ops*/, 3, 4, 1, |
| 18632 | // Src: (ld:{ *:[v2f64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 18633 | // Dst: (LOAD_V128_A32:{ *:[v2f64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 18634 | /* 36862*/ 0, // EndSwitchType |
| 18635 | /* 36863*/ /*SwitchType*/ 45, MVT::i64,// ->36910 |
| 18636 | /* 36865*/ OPC_MoveParent, |
| 18637 | /* 36866*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 18638 | /* 36868*/ OPC_CheckPredicate, 11, // Predicate_load |
| 18639 | /* 36870*/ OPC_SwitchType /*2 cases */, 17, MVT::v4f32,// ->36890 |
| 18640 | /* 36873*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18641 | /* 36875*/ OPC_EmitMergeInputChains1_0, |
| 18642 | /* 36876*/ OPC_EmitInteger, MVT::i32, 0, |
| 18643 | /* 36879*/ OPC_EmitConvertToTarget, 2, |
| 18644 | /* 36881*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18645 | MVT::v4f32, 3/*#Ops*/, 3, 4, 1, |
| 18646 | // Src: (ld:{ *:[v4f32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 18647 | // Dst: (LOAD_V128_A64:{ *:[v4f32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 18648 | /* 36890*/ /*SwitchType*/ 17, MVT::v2f64,// ->36909 |
| 18649 | /* 36892*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18650 | /* 36894*/ OPC_EmitMergeInputChains1_0, |
| 18651 | /* 36895*/ OPC_EmitInteger, MVT::i32, 0, |
| 18652 | /* 36898*/ OPC_EmitConvertToTarget, 2, |
| 18653 | /* 36900*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18654 | MVT::v2f64, 3/*#Ops*/, 3, 4, 1, |
| 18655 | // Src: (ld:{ *:[v2f64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 18656 | // Dst: (LOAD_V128_A64:{ *:[v2f64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 18657 | /* 36909*/ 0, // EndSwitchType |
| 18658 | /* 36910*/ 0, // EndSwitchType |
| 18659 | /* 36911*/ /*SwitchOpcode*/ 105, TARGET_VAL(ISD::OR),// ->37019 |
| 18660 | /* 36914*/ OPC_RecordChild0, // #1 = $addr |
| 18661 | /* 36915*/ OPC_RecordChild1, // #2 = $off |
| 18662 | /* 36916*/ OPC_MoveChild1, |
| 18663 | /* 36917*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 18664 | /* 36920*/ OPC_MoveParent, |
| 18665 | /* 36921*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 18666 | /* 36923*/ OPC_SwitchType /*2 cases */, 45, MVT::i32,// ->36971 |
| 18667 | /* 36926*/ OPC_MoveParent, |
| 18668 | /* 36927*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 18669 | /* 36929*/ OPC_CheckPredicate, 11, // Predicate_load |
| 18670 | /* 36931*/ OPC_SwitchType /*2 cases */, 17, MVT::v4f32,// ->36951 |
| 18671 | /* 36934*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18672 | /* 36936*/ OPC_EmitMergeInputChains1_0, |
| 18673 | /* 36937*/ OPC_EmitInteger, MVT::i32, 0, |
| 18674 | /* 36940*/ OPC_EmitConvertToTarget, 2, |
| 18675 | /* 36942*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18676 | MVT::v4f32, 3/*#Ops*/, 3, 4, 1, |
| 18677 | // Src: (ld:{ *:[v4f32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 18678 | // Dst: (LOAD_V128_A32:{ *:[v4f32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 18679 | /* 36951*/ /*SwitchType*/ 17, MVT::v2f64,// ->36970 |
| 18680 | /* 36953*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18681 | /* 36955*/ OPC_EmitMergeInputChains1_0, |
| 18682 | /* 36956*/ OPC_EmitInteger, MVT::i32, 0, |
| 18683 | /* 36959*/ OPC_EmitConvertToTarget, 2, |
| 18684 | /* 36961*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18685 | MVT::v2f64, 3/*#Ops*/, 3, 4, 1, |
| 18686 | // Src: (ld:{ *:[v2f64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 18687 | // Dst: (LOAD_V128_A32:{ *:[v2f64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 18688 | /* 36970*/ 0, // EndSwitchType |
| 18689 | /* 36971*/ /*SwitchType*/ 45, MVT::i64,// ->37018 |
| 18690 | /* 36973*/ OPC_MoveParent, |
| 18691 | /* 36974*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 18692 | /* 36976*/ OPC_CheckPredicate, 11, // Predicate_load |
| 18693 | /* 36978*/ OPC_SwitchType /*2 cases */, 17, MVT::v4f32,// ->36998 |
| 18694 | /* 36981*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18695 | /* 36983*/ OPC_EmitMergeInputChains1_0, |
| 18696 | /* 36984*/ OPC_EmitInteger, MVT::i32, 0, |
| 18697 | /* 36987*/ OPC_EmitConvertToTarget, 2, |
| 18698 | /* 36989*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18699 | MVT::v4f32, 3/*#Ops*/, 3, 4, 1, |
| 18700 | // Src: (ld:{ *:[v4f32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 18701 | // Dst: (LOAD_V128_A64:{ *:[v4f32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 18702 | /* 36998*/ /*SwitchType*/ 17, MVT::v2f64,// ->37017 |
| 18703 | /* 37000*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18704 | /* 37002*/ OPC_EmitMergeInputChains1_0, |
| 18705 | /* 37003*/ OPC_EmitInteger, MVT::i32, 0, |
| 18706 | /* 37006*/ OPC_EmitConvertToTarget, 2, |
| 18707 | /* 37008*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18708 | MVT::v2f64, 3/*#Ops*/, 3, 4, 1, |
| 18709 | // Src: (ld:{ *:[v2f64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 11 |
| 18710 | // Dst: (LOAD_V128_A64:{ *:[v2f64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 18711 | /* 37017*/ 0, // EndSwitchType |
| 18712 | /* 37018*/ 0, // EndSwitchType |
| 18713 | /* 37019*/ /*SwitchOpcode*/ 125, TARGET_VAL(WebAssemblyISD::Wrapper),// ->37147 |
| 18714 | /* 37022*/ OPC_RecordChild0, // #1 = $off |
| 18715 | /* 37023*/ OPC_MoveChild0, |
| 18716 | /* 37024*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 18717 | /* 37027*/ OPC_MoveParent, |
| 18718 | /* 37028*/ OPC_MoveParent, |
| 18719 | /* 37029*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 18720 | /* 37031*/ OPC_CheckPredicate, 11, // Predicate_load |
| 18721 | /* 37033*/ OPC_SwitchType /*2 cases */, 54, MVT::v4f32,// ->37090 |
| 18722 | /* 37036*/ OPC_Scope, 25, /*->37063*/ // 2 children in Scope |
| 18723 | /* 37038*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 18724 | /* 37040*/ OPC_EmitMergeInputChains1_0, |
| 18725 | /* 37041*/ OPC_EmitInteger, MVT::i32, 0, |
| 18726 | /* 37044*/ OPC_EmitInteger, MVT::i32, 0, |
| 18727 | /* 37047*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18728 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 18729 | /* 37054*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18730 | MVT::v4f32, 3/*#Ops*/, 2, 1, 4, |
| 18731 | // Src: (ld:{ *:[v4f32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 18732 | // Dst: (LOAD_V128_A32:{ *:[v4f32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18733 | /* 37063*/ /*Scope*/ 25, /*->37089*/ |
| 18734 | /* 37064*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 18735 | /* 37066*/ OPC_EmitMergeInputChains1_0, |
| 18736 | /* 37067*/ OPC_EmitInteger, MVT::i32, 0, |
| 18737 | /* 37070*/ OPC_EmitInteger, MVT::i64, 0, |
| 18738 | /* 37073*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18739 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 18740 | /* 37080*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18741 | MVT::v4f32, 3/*#Ops*/, 2, 1, 4, |
| 18742 | // Src: (ld:{ *:[v4f32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 18743 | // Dst: (LOAD_V128_A64:{ *:[v4f32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18744 | /* 37089*/ 0, /*End of Scope*/ |
| 18745 | /* 37090*/ /*SwitchType*/ 54, MVT::v2f64,// ->37146 |
| 18746 | /* 37092*/ OPC_Scope, 25, /*->37119*/ // 2 children in Scope |
| 18747 | /* 37094*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 18748 | /* 37096*/ OPC_EmitMergeInputChains1_0, |
| 18749 | /* 37097*/ OPC_EmitInteger, MVT::i32, 0, |
| 18750 | /* 37100*/ OPC_EmitInteger, MVT::i32, 0, |
| 18751 | /* 37103*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18752 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 18753 | /* 37110*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18754 | MVT::v2f64, 3/*#Ops*/, 2, 1, 4, |
| 18755 | // Src: (ld:{ *:[v2f64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 18756 | // Dst: (LOAD_V128_A32:{ *:[v2f64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18757 | /* 37119*/ /*Scope*/ 25, /*->37145*/ |
| 18758 | /* 37120*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 18759 | /* 37122*/ OPC_EmitMergeInputChains1_0, |
| 18760 | /* 37123*/ OPC_EmitInteger, MVT::i32, 0, |
| 18761 | /* 37126*/ OPC_EmitInteger, MVT::i64, 0, |
| 18762 | /* 37129*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18763 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 18764 | /* 37136*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18765 | MVT::v2f64, 3/*#Ops*/, 2, 1, 4, |
| 18766 | // Src: (ld:{ *:[v2f64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 10 |
| 18767 | // Dst: (LOAD_V128_A64:{ *:[v2f64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18768 | /* 37145*/ 0, /*End of Scope*/ |
| 18769 | /* 37146*/ 0, // EndSwitchType |
| 18770 | /* 37147*/ 0, // EndSwitchOpcode |
| 18771 | /* 37148*/ /*Scope*/ 106|128,1/*234*/, /*->37384*/ |
| 18772 | /* 37150*/ OPC_RecordChild1, // #1 = $off |
| 18773 | /* 37151*/ OPC_Scope, 3|128,1/*131*/, /*->37285*/ // 3 children in Scope |
| 18774 | /* 37154*/ OPC_MoveChild1, |
| 18775 | /* 37155*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 18776 | /* 37158*/ OPC_MoveParent, |
| 18777 | /* 37159*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 18778 | /* 37161*/ OPC_CheckPredicate, 11, // Predicate_load |
| 18779 | /* 37163*/ OPC_SwitchType /*2 cases */, 58, MVT::v4f32,// ->37224 |
| 18780 | /* 37166*/ OPC_Scope, 27, /*->37195*/ // 2 children in Scope |
| 18781 | /* 37168*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18782 | /* 37170*/ OPC_EmitMergeInputChains1_0, |
| 18783 | /* 37171*/ OPC_EmitInteger, MVT::i32, 0, |
| 18784 | /* 37174*/ OPC_EmitConvertToTarget, 1, |
| 18785 | /* 37176*/ OPC_EmitInteger, MVT::i32, 0, |
| 18786 | /* 37179*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18787 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 18788 | /* 37186*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18789 | MVT::v4f32, 3/*#Ops*/, 2, 3, 5, |
| 18790 | // Src: (ld:{ *:[v4f32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 18791 | // Dst: (LOAD_V128_A32:{ *:[v4f32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18792 | /* 37195*/ /*Scope*/ 27, /*->37223*/ |
| 18793 | /* 37196*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18794 | /* 37198*/ OPC_EmitMergeInputChains1_0, |
| 18795 | /* 37199*/ OPC_EmitInteger, MVT::i32, 0, |
| 18796 | /* 37202*/ OPC_EmitConvertToTarget, 1, |
| 18797 | /* 37204*/ OPC_EmitInteger, MVT::i64, 0, |
| 18798 | /* 37207*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18799 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18800 | /* 37214*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18801 | MVT::v4f32, 3/*#Ops*/, 2, 3, 5, |
| 18802 | // Src: (ld:{ *:[v4f32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 18803 | // Dst: (LOAD_V128_A64:{ *:[v4f32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18804 | /* 37223*/ 0, /*End of Scope*/ |
| 18805 | /* 37224*/ /*SwitchType*/ 58, MVT::v2f64,// ->37284 |
| 18806 | /* 37226*/ OPC_Scope, 27, /*->37255*/ // 2 children in Scope |
| 18807 | /* 37228*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18808 | /* 37230*/ OPC_EmitMergeInputChains1_0, |
| 18809 | /* 37231*/ OPC_EmitInteger, MVT::i32, 0, |
| 18810 | /* 37234*/ OPC_EmitConvertToTarget, 1, |
| 18811 | /* 37236*/ OPC_EmitInteger, MVT::i32, 0, |
| 18812 | /* 37239*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 18813 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 18814 | /* 37246*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18815 | MVT::v2f64, 3/*#Ops*/, 2, 3, 5, |
| 18816 | // Src: (ld:{ *:[v2f64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 18817 | // Dst: (LOAD_V128_A32:{ *:[v2f64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 18818 | /* 37255*/ /*Scope*/ 27, /*->37283*/ |
| 18819 | /* 37256*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18820 | /* 37258*/ OPC_EmitMergeInputChains1_0, |
| 18821 | /* 37259*/ OPC_EmitInteger, MVT::i32, 0, |
| 18822 | /* 37262*/ OPC_EmitConvertToTarget, 1, |
| 18823 | /* 37264*/ OPC_EmitInteger, MVT::i64, 0, |
| 18824 | /* 37267*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 18825 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 18826 | /* 37274*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18827 | MVT::v2f64, 3/*#Ops*/, 2, 3, 5, |
| 18828 | // Src: (ld:{ *:[v2f64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 7 |
| 18829 | // Dst: (LOAD_V128_A64:{ *:[v2f64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 18830 | /* 37283*/ 0, /*End of Scope*/ |
| 18831 | /* 37284*/ 0, // EndSwitchType |
| 18832 | /* 37285*/ /*Scope*/ 48, /*->37334*/ |
| 18833 | /* 37286*/ OPC_CheckChild1Type, MVT::i32, |
| 18834 | /* 37288*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 18835 | /* 37290*/ OPC_CheckPredicate, 11, // Predicate_load |
| 18836 | /* 37292*/ OPC_SwitchType /*2 cases */, 18, MVT::v4f32,// ->37313 |
| 18837 | /* 37295*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18838 | /* 37297*/ OPC_EmitMergeInputChains1_0, |
| 18839 | /* 37298*/ OPC_EmitInteger, MVT::i32, 0, |
| 18840 | /* 37301*/ OPC_EmitInteger, MVT::i32, 0, |
| 18841 | /* 37304*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18842 | MVT::v4f32, 3/*#Ops*/, 2, 3, 1, |
| 18843 | // Src: (ld:{ *:[v4f32] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 18844 | // Dst: (LOAD_V128_A32:{ *:[v4f32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18845 | /* 37313*/ /*SwitchType*/ 18, MVT::v2f64,// ->37333 |
| 18846 | /* 37315*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18847 | /* 37317*/ OPC_EmitMergeInputChains1_0, |
| 18848 | /* 37318*/ OPC_EmitInteger, MVT::i32, 0, |
| 18849 | /* 37321*/ OPC_EmitInteger, MVT::i32, 0, |
| 18850 | /* 37324*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18851 | MVT::v2f64, 3/*#Ops*/, 2, 3, 1, |
| 18852 | // Src: (ld:{ *:[v2f64] } I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 18853 | // Dst: (LOAD_V128_A32:{ *:[v2f64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 18854 | /* 37333*/ 0, // EndSwitchType |
| 18855 | /* 37334*/ /*Scope*/ 48, /*->37383*/ |
| 18856 | /* 37335*/ OPC_CheckChild1Type, MVT::i64, |
| 18857 | /* 37337*/ OPC_CheckPredicate, 10, // Predicate_unindexedload |
| 18858 | /* 37339*/ OPC_CheckPredicate, 11, // Predicate_load |
| 18859 | /* 37341*/ OPC_SwitchType /*2 cases */, 18, MVT::v4f32,// ->37362 |
| 18860 | /* 37344*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18861 | /* 37346*/ OPC_EmitMergeInputChains1_0, |
| 18862 | /* 37347*/ OPC_EmitInteger, MVT::i32, 0, |
| 18863 | /* 37350*/ OPC_EmitInteger, MVT::i64, 0, |
| 18864 | /* 37353*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18865 | MVT::v4f32, 3/*#Ops*/, 2, 3, 1, |
| 18866 | // Src: (ld:{ *:[v4f32] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 18867 | // Dst: (LOAD_V128_A64:{ *:[v4f32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18868 | /* 37362*/ /*SwitchType*/ 18, MVT::v2f64,// ->37382 |
| 18869 | /* 37364*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18870 | /* 37366*/ OPC_EmitMergeInputChains1_0, |
| 18871 | /* 37367*/ OPC_EmitInteger, MVT::i32, 0, |
| 18872 | /* 37370*/ OPC_EmitInteger, MVT::i64, 0, |
| 18873 | /* 37373*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18874 | MVT::v2f64, 3/*#Ops*/, 2, 3, 1, |
| 18875 | // Src: (ld:{ *:[v2f64] } I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 4 |
| 18876 | // Dst: (LOAD_V128_A64:{ *:[v2f64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 18877 | /* 37382*/ 0, // EndSwitchType |
| 18878 | /* 37383*/ 0, /*End of Scope*/ |
| 18879 | /* 37384*/ 0, /*End of Scope*/ |
| 18880 | /* 37385*/ /*SwitchOpcode*/ 83|128,47/*6099*/, TARGET_VAL(ISD::STORE),// ->43488 |
| 18881 | /* 37389*/ OPC_RecordMemRef, |
| 18882 | /* 37390*/ OPC_RecordNode, // #0 = 'st' chained node |
| 18883 | /* 37391*/ OPC_RecordChild1, // #1 = $val |
| 18884 | /* 37392*/ OPC_Scope, 104|128,6/*872*/, /*->38267*/ // 10 children in Scope |
| 18885 | /* 37395*/ OPC_CheckChild1Type, MVT::i32, |
| 18886 | /* 37397*/ OPC_Scope, 0|128,4/*512*/, /*->37912*/ // 2 children in Scope |
| 18887 | /* 37400*/ OPC_MoveChild2, |
| 18888 | /* 37401*/ OPC_SwitchOpcode /*3 cases */, 27|128,1/*155*/, TARGET_VAL(ISD::ADD),// ->37561 |
| 18889 | /* 37406*/ OPC_RecordChild0, // #2 = $addr |
| 18890 | /* 37407*/ OPC_RecordChild1, // #3 = $off |
| 18891 | /* 37408*/ OPC_MoveChild1, |
| 18892 | /* 37409*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 18893 | /* 37412*/ OPC_MoveParent, |
| 18894 | /* 37413*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 18895 | /* 37415*/ OPC_SwitchType /*2 cases */, 70, MVT::i32,// ->37488 |
| 18896 | /* 37418*/ OPC_MoveParent, |
| 18897 | /* 37419*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 18898 | /* 37421*/ OPC_Scope, 19, /*->37442*/ // 2 children in Scope |
| 18899 | /* 37423*/ OPC_CheckPredicate, 19, // Predicate_store |
| 18900 | /* 37425*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18901 | /* 37427*/ OPC_EmitMergeInputChains1_0, |
| 18902 | /* 37428*/ OPC_EmitInteger, MVT::i32, 0, |
| 18903 | /* 37431*/ OPC_EmitConvertToTarget, 3, |
| 18904 | /* 37433*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18905 | 4/*#Ops*/, 4, 5, 2, 1, |
| 18906 | // Src: (st i32:{ *:[i32] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 18907 | // Dst: (STORE_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 18908 | /* 37442*/ /*Scope*/ 44, /*->37487*/ |
| 18909 | /* 37443*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 18910 | /* 37445*/ OPC_Scope, 19, /*->37466*/ // 2 children in Scope |
| 18911 | /* 37447*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 18912 | /* 37449*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18913 | /* 37451*/ OPC_EmitMergeInputChains1_0, |
| 18914 | /* 37452*/ OPC_EmitInteger, MVT::i32, 0, |
| 18915 | /* 37455*/ OPC_EmitConvertToTarget, 3, |
| 18916 | /* 37457*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18917 | 4/*#Ops*/, 4, 5, 2, 1, |
| 18918 | // Src: (st i32:{ *:[i32] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 11 |
| 18919 | // Dst: (STORE8_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 18920 | /* 37466*/ /*Scope*/ 19, /*->37486*/ |
| 18921 | /* 37467*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 18922 | /* 37469*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18923 | /* 37471*/ OPC_EmitMergeInputChains1_0, |
| 18924 | /* 37472*/ OPC_EmitInteger, MVT::i32, 0, |
| 18925 | /* 37475*/ OPC_EmitConvertToTarget, 3, |
| 18926 | /* 37477*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18927 | 4/*#Ops*/, 4, 5, 2, 1, |
| 18928 | // Src: (st i32:{ *:[i32] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 11 |
| 18929 | // Dst: (STORE16_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 18930 | /* 37486*/ 0, /*End of Scope*/ |
| 18931 | /* 37487*/ 0, /*End of Scope*/ |
| 18932 | /* 37488*/ /*SwitchType*/ 70, MVT::i64,// ->37560 |
| 18933 | /* 37490*/ OPC_MoveParent, |
| 18934 | /* 37491*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 18935 | /* 37493*/ OPC_Scope, 19, /*->37514*/ // 2 children in Scope |
| 18936 | /* 37495*/ OPC_CheckPredicate, 19, // Predicate_store |
| 18937 | /* 37497*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18938 | /* 37499*/ OPC_EmitMergeInputChains1_0, |
| 18939 | /* 37500*/ OPC_EmitInteger, MVT::i32, 0, |
| 18940 | /* 37503*/ OPC_EmitConvertToTarget, 3, |
| 18941 | /* 37505*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18942 | 4/*#Ops*/, 4, 5, 2, 1, |
| 18943 | // Src: (st i32:{ *:[i32] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 18944 | // Dst: (STORE_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 18945 | /* 37514*/ /*Scope*/ 44, /*->37559*/ |
| 18946 | /* 37515*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 18947 | /* 37517*/ OPC_Scope, 19, /*->37538*/ // 2 children in Scope |
| 18948 | /* 37519*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 18949 | /* 37521*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18950 | /* 37523*/ OPC_EmitMergeInputChains1_0, |
| 18951 | /* 37524*/ OPC_EmitInteger, MVT::i32, 0, |
| 18952 | /* 37527*/ OPC_EmitConvertToTarget, 3, |
| 18953 | /* 37529*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18954 | 4/*#Ops*/, 4, 5, 2, 1, |
| 18955 | // Src: (st i32:{ *:[i32] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 11 |
| 18956 | // Dst: (STORE8_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 18957 | /* 37538*/ /*Scope*/ 19, /*->37558*/ |
| 18958 | /* 37539*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 18959 | /* 37541*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 18960 | /* 37543*/ OPC_EmitMergeInputChains1_0, |
| 18961 | /* 37544*/ OPC_EmitInteger, MVT::i32, 0, |
| 18962 | /* 37547*/ OPC_EmitConvertToTarget, 3, |
| 18963 | /* 37549*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 18964 | 4/*#Ops*/, 4, 5, 2, 1, |
| 18965 | // Src: (st i32:{ *:[i32] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 11 |
| 18966 | // Dst: (STORE16_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 18967 | /* 37558*/ 0, /*End of Scope*/ |
| 18968 | /* 37559*/ 0, /*End of Scope*/ |
| 18969 | /* 37560*/ 0, // EndSwitchType |
| 18970 | /* 37561*/ /*SwitchOpcode*/ 27|128,1/*155*/, TARGET_VAL(ISD::OR),// ->37720 |
| 18971 | /* 37565*/ OPC_RecordChild0, // #2 = $addr |
| 18972 | /* 37566*/ OPC_RecordChild1, // #3 = $off |
| 18973 | /* 37567*/ OPC_MoveChild1, |
| 18974 | /* 37568*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 18975 | /* 37571*/ OPC_MoveParent, |
| 18976 | /* 37572*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 18977 | /* 37574*/ OPC_SwitchType /*2 cases */, 70, MVT::i32,// ->37647 |
| 18978 | /* 37577*/ OPC_MoveParent, |
| 18979 | /* 37578*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 18980 | /* 37580*/ OPC_Scope, 19, /*->37601*/ // 2 children in Scope |
| 18981 | /* 37582*/ OPC_CheckPredicate, 19, // Predicate_store |
| 18982 | /* 37584*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18983 | /* 37586*/ OPC_EmitMergeInputChains1_0, |
| 18984 | /* 37587*/ OPC_EmitInteger, MVT::i32, 0, |
| 18985 | /* 37590*/ OPC_EmitConvertToTarget, 3, |
| 18986 | /* 37592*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18987 | 4/*#Ops*/, 4, 5, 2, 1, |
| 18988 | // Src: (st i32:{ *:[i32] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 18989 | // Dst: (STORE_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 18990 | /* 37601*/ /*Scope*/ 44, /*->37646*/ |
| 18991 | /* 37602*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 18992 | /* 37604*/ OPC_Scope, 19, /*->37625*/ // 2 children in Scope |
| 18993 | /* 37606*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 18994 | /* 37608*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 18995 | /* 37610*/ OPC_EmitMergeInputChains1_0, |
| 18996 | /* 37611*/ OPC_EmitInteger, MVT::i32, 0, |
| 18997 | /* 37614*/ OPC_EmitConvertToTarget, 3, |
| 18998 | /* 37616*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 18999 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19000 | // Src: (st i32:{ *:[i32] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 11 |
| 19001 | // Dst: (STORE8_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 19002 | /* 37625*/ /*Scope*/ 19, /*->37645*/ |
| 19003 | /* 37626*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19004 | /* 37628*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19005 | /* 37630*/ OPC_EmitMergeInputChains1_0, |
| 19006 | /* 37631*/ OPC_EmitInteger, MVT::i32, 0, |
| 19007 | /* 37634*/ OPC_EmitConvertToTarget, 3, |
| 19008 | /* 37636*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19009 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19010 | // Src: (st i32:{ *:[i32] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 11 |
| 19011 | // Dst: (STORE16_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 19012 | /* 37645*/ 0, /*End of Scope*/ |
| 19013 | /* 37646*/ 0, /*End of Scope*/ |
| 19014 | /* 37647*/ /*SwitchType*/ 70, MVT::i64,// ->37719 |
| 19015 | /* 37649*/ OPC_MoveParent, |
| 19016 | /* 37650*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19017 | /* 37652*/ OPC_Scope, 19, /*->37673*/ // 2 children in Scope |
| 19018 | /* 37654*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19019 | /* 37656*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19020 | /* 37658*/ OPC_EmitMergeInputChains1_0, |
| 19021 | /* 37659*/ OPC_EmitInteger, MVT::i32, 0, |
| 19022 | /* 37662*/ OPC_EmitConvertToTarget, 3, |
| 19023 | /* 37664*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19024 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19025 | // Src: (st i32:{ *:[i32] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 19026 | // Dst: (STORE_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 19027 | /* 37673*/ /*Scope*/ 44, /*->37718*/ |
| 19028 | /* 37674*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19029 | /* 37676*/ OPC_Scope, 19, /*->37697*/ // 2 children in Scope |
| 19030 | /* 37678*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19031 | /* 37680*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19032 | /* 37682*/ OPC_EmitMergeInputChains1_0, |
| 19033 | /* 37683*/ OPC_EmitInteger, MVT::i32, 0, |
| 19034 | /* 37686*/ OPC_EmitConvertToTarget, 3, |
| 19035 | /* 37688*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19036 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19037 | // Src: (st i32:{ *:[i32] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 11 |
| 19038 | // Dst: (STORE8_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 19039 | /* 37697*/ /*Scope*/ 19, /*->37717*/ |
| 19040 | /* 37698*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19041 | /* 37700*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19042 | /* 37702*/ OPC_EmitMergeInputChains1_0, |
| 19043 | /* 37703*/ OPC_EmitInteger, MVT::i32, 0, |
| 19044 | /* 37706*/ OPC_EmitConvertToTarget, 3, |
| 19045 | /* 37708*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19046 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19047 | // Src: (st i32:{ *:[i32] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 11 |
| 19048 | // Dst: (STORE16_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 19049 | /* 37717*/ 0, /*End of Scope*/ |
| 19050 | /* 37718*/ 0, /*End of Scope*/ |
| 19051 | /* 37719*/ 0, // EndSwitchType |
| 19052 | /* 37720*/ /*SwitchOpcode*/ 59|128,1/*187*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->37911 |
| 19053 | /* 37724*/ OPC_RecordChild0, // #2 = $off |
| 19054 | /* 37725*/ OPC_MoveChild0, |
| 19055 | /* 37726*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 19056 | /* 37729*/ OPC_MoveParent, |
| 19057 | /* 37730*/ OPC_MoveParent, |
| 19058 | /* 37731*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19059 | /* 37733*/ OPC_Scope, 56, /*->37791*/ // 2 children in Scope |
| 19060 | /* 37735*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19061 | /* 37737*/ OPC_Scope, 25, /*->37764*/ // 2 children in Scope |
| 19062 | /* 37739*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19063 | /* 37741*/ OPC_EmitMergeInputChains1_0, |
| 19064 | /* 37742*/ OPC_EmitInteger, MVT::i32, 0, |
| 19065 | /* 37745*/ OPC_EmitInteger, MVT::i32, 0, |
| 19066 | /* 37748*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19067 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 19068 | /* 37755*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19069 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19070 | // Src: (st i32:{ *:[i32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 19071 | // Dst: (STORE_I32_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 19072 | /* 37764*/ /*Scope*/ 25, /*->37790*/ |
| 19073 | /* 37765*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19074 | /* 37767*/ OPC_EmitMergeInputChains1_0, |
| 19075 | /* 37768*/ OPC_EmitInteger, MVT::i32, 0, |
| 19076 | /* 37771*/ OPC_EmitInteger, MVT::i64, 0, |
| 19077 | /* 37774*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19078 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 19079 | /* 37781*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19080 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19081 | // Src: (st i32:{ *:[i32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 19082 | // Dst: (STORE_I32_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 19083 | /* 37790*/ 0, /*End of Scope*/ |
| 19084 | /* 37791*/ /*Scope*/ 118, /*->37910*/ |
| 19085 | /* 37792*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19086 | /* 37794*/ OPC_Scope, 56, /*->37852*/ // 2 children in Scope |
| 19087 | /* 37796*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19088 | /* 37798*/ OPC_Scope, 25, /*->37825*/ // 2 children in Scope |
| 19089 | /* 37800*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19090 | /* 37802*/ OPC_EmitMergeInputChains1_0, |
| 19091 | /* 37803*/ OPC_EmitInteger, MVT::i32, 0, |
| 19092 | /* 37806*/ OPC_EmitInteger, MVT::i32, 0, |
| 19093 | /* 37809*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19094 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 19095 | /* 37816*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19096 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19097 | // Src: (st i32:{ *:[i32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 10 |
| 19098 | // Dst: (STORE8_I32_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 19099 | /* 37825*/ /*Scope*/ 25, /*->37851*/ |
| 19100 | /* 37826*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19101 | /* 37828*/ OPC_EmitMergeInputChains1_0, |
| 19102 | /* 37829*/ OPC_EmitInteger, MVT::i32, 0, |
| 19103 | /* 37832*/ OPC_EmitInteger, MVT::i64, 0, |
| 19104 | /* 37835*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19105 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 19106 | /* 37842*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19107 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19108 | // Src: (st i32:{ *:[i32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 10 |
| 19109 | // Dst: (STORE8_I32_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 19110 | /* 37851*/ 0, /*End of Scope*/ |
| 19111 | /* 37852*/ /*Scope*/ 56, /*->37909*/ |
| 19112 | /* 37853*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19113 | /* 37855*/ OPC_Scope, 25, /*->37882*/ // 2 children in Scope |
| 19114 | /* 37857*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19115 | /* 37859*/ OPC_EmitMergeInputChains1_0, |
| 19116 | /* 37860*/ OPC_EmitInteger, MVT::i32, 0, |
| 19117 | /* 37863*/ OPC_EmitInteger, MVT::i32, 0, |
| 19118 | /* 37866*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19119 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 19120 | /* 37873*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19121 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19122 | // Src: (st i32:{ *:[i32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 10 |
| 19123 | // Dst: (STORE16_I32_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 19124 | /* 37882*/ /*Scope*/ 25, /*->37908*/ |
| 19125 | /* 37883*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19126 | /* 37885*/ OPC_EmitMergeInputChains1_0, |
| 19127 | /* 37886*/ OPC_EmitInteger, MVT::i32, 0, |
| 19128 | /* 37889*/ OPC_EmitInteger, MVT::i64, 0, |
| 19129 | /* 37892*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19130 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 19131 | /* 37899*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19132 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19133 | // Src: (st i32:{ *:[i32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 10 |
| 19134 | // Dst: (STORE16_I32_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 19135 | /* 37908*/ 0, /*End of Scope*/ |
| 19136 | /* 37909*/ 0, /*End of Scope*/ |
| 19137 | /* 37910*/ 0, /*End of Scope*/ |
| 19138 | /* 37911*/ 0, // EndSwitchOpcode |
| 19139 | /* 37912*/ /*Scope*/ 96|128,2/*352*/, /*->38266*/ |
| 19140 | /* 37914*/ OPC_RecordChild2, // #2 = $off |
| 19141 | /* 37915*/ OPC_Scope, 69|128,1/*197*/, /*->38115*/ // 3 children in Scope |
| 19142 | /* 37918*/ OPC_MoveChild2, |
| 19143 | /* 37919*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 19144 | /* 37922*/ OPC_MoveParent, |
| 19145 | /* 37923*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19146 | /* 37925*/ OPC_Scope, 60, /*->37987*/ // 2 children in Scope |
| 19147 | /* 37927*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19148 | /* 37929*/ OPC_Scope, 27, /*->37958*/ // 2 children in Scope |
| 19149 | /* 37931*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19150 | /* 37933*/ OPC_EmitMergeInputChains1_0, |
| 19151 | /* 37934*/ OPC_EmitInteger, MVT::i32, 0, |
| 19152 | /* 37937*/ OPC_EmitConvertToTarget, 2, |
| 19153 | /* 37939*/ OPC_EmitInteger, MVT::i32, 0, |
| 19154 | /* 37942*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19155 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 19156 | /* 37949*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19157 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19158 | // Src: (st i32:{ *:[i32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 19159 | // Dst: (STORE_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 19160 | /* 37958*/ /*Scope*/ 27, /*->37986*/ |
| 19161 | /* 37959*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19162 | /* 37961*/ OPC_EmitMergeInputChains1_0, |
| 19163 | /* 37962*/ OPC_EmitInteger, MVT::i32, 0, |
| 19164 | /* 37965*/ OPC_EmitConvertToTarget, 2, |
| 19165 | /* 37967*/ OPC_EmitInteger, MVT::i64, 0, |
| 19166 | /* 37970*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19167 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 19168 | /* 37977*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19169 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19170 | // Src: (st i32:{ *:[i32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 19171 | // Dst: (STORE_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 19172 | /* 37986*/ 0, /*End of Scope*/ |
| 19173 | /* 37987*/ /*Scope*/ 126, /*->38114*/ |
| 19174 | /* 37988*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19175 | /* 37990*/ OPC_Scope, 60, /*->38052*/ // 2 children in Scope |
| 19176 | /* 37992*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19177 | /* 37994*/ OPC_Scope, 27, /*->38023*/ // 2 children in Scope |
| 19178 | /* 37996*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19179 | /* 37998*/ OPC_EmitMergeInputChains1_0, |
| 19180 | /* 37999*/ OPC_EmitInteger, MVT::i32, 0, |
| 19181 | /* 38002*/ OPC_EmitConvertToTarget, 2, |
| 19182 | /* 38004*/ OPC_EmitInteger, MVT::i32, 0, |
| 19183 | /* 38007*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19184 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 19185 | /* 38014*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19186 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19187 | // Src: (st i32:{ *:[i32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 7 |
| 19188 | // Dst: (STORE8_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 19189 | /* 38023*/ /*Scope*/ 27, /*->38051*/ |
| 19190 | /* 38024*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19191 | /* 38026*/ OPC_EmitMergeInputChains1_0, |
| 19192 | /* 38027*/ OPC_EmitInteger, MVT::i32, 0, |
| 19193 | /* 38030*/ OPC_EmitConvertToTarget, 2, |
| 19194 | /* 38032*/ OPC_EmitInteger, MVT::i64, 0, |
| 19195 | /* 38035*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19196 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 19197 | /* 38042*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19198 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19199 | // Src: (st i32:{ *:[i32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 7 |
| 19200 | // Dst: (STORE8_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 19201 | /* 38051*/ 0, /*End of Scope*/ |
| 19202 | /* 38052*/ /*Scope*/ 60, /*->38113*/ |
| 19203 | /* 38053*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19204 | /* 38055*/ OPC_Scope, 27, /*->38084*/ // 2 children in Scope |
| 19205 | /* 38057*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19206 | /* 38059*/ OPC_EmitMergeInputChains1_0, |
| 19207 | /* 38060*/ OPC_EmitInteger, MVT::i32, 0, |
| 19208 | /* 38063*/ OPC_EmitConvertToTarget, 2, |
| 19209 | /* 38065*/ OPC_EmitInteger, MVT::i32, 0, |
| 19210 | /* 38068*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19211 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 19212 | /* 38075*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19213 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19214 | // Src: (st i32:{ *:[i32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 7 |
| 19215 | // Dst: (STORE16_I32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 19216 | /* 38084*/ /*Scope*/ 27, /*->38112*/ |
| 19217 | /* 38085*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19218 | /* 38087*/ OPC_EmitMergeInputChains1_0, |
| 19219 | /* 38088*/ OPC_EmitInteger, MVT::i32, 0, |
| 19220 | /* 38091*/ OPC_EmitConvertToTarget, 2, |
| 19221 | /* 38093*/ OPC_EmitInteger, MVT::i64, 0, |
| 19222 | /* 38096*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19223 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 19224 | /* 38103*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19225 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19226 | // Src: (st i32:{ *:[i32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 7 |
| 19227 | // Dst: (STORE16_I32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 19228 | /* 38112*/ 0, /*End of Scope*/ |
| 19229 | /* 38113*/ 0, /*End of Scope*/ |
| 19230 | /* 38114*/ 0, /*End of Scope*/ |
| 19231 | /* 38115*/ /*Scope*/ 74, /*->38190*/ |
| 19232 | /* 38116*/ OPC_CheckChild2Type, MVT::i32, |
| 19233 | /* 38118*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19234 | /* 38120*/ OPC_Scope, 20, /*->38142*/ // 2 children in Scope |
| 19235 | /* 38122*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19236 | /* 38124*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19237 | /* 38126*/ OPC_EmitMergeInputChains1_0, |
| 19238 | /* 38127*/ OPC_EmitInteger, MVT::i32, 0, |
| 19239 | /* 38130*/ OPC_EmitInteger, MVT::i32, 0, |
| 19240 | /* 38133*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19241 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19242 | // Src: (st i32:{ *:[i32] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 19243 | // Dst: (STORE_I32_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 19244 | /* 38142*/ /*Scope*/ 46, /*->38189*/ |
| 19245 | /* 38143*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19246 | /* 38145*/ OPC_Scope, 20, /*->38167*/ // 2 children in Scope |
| 19247 | /* 38147*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19248 | /* 38149*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19249 | /* 38151*/ OPC_EmitMergeInputChains1_0, |
| 19250 | /* 38152*/ OPC_EmitInteger, MVT::i32, 0, |
| 19251 | /* 38155*/ OPC_EmitInteger, MVT::i32, 0, |
| 19252 | /* 38158*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19253 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19254 | // Src: (st i32:{ *:[i32] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 4 |
| 19255 | // Dst: (STORE8_I32_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 19256 | /* 38167*/ /*Scope*/ 20, /*->38188*/ |
| 19257 | /* 38168*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19258 | /* 38170*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19259 | /* 38172*/ OPC_EmitMergeInputChains1_0, |
| 19260 | /* 38173*/ OPC_EmitInteger, MVT::i32, 0, |
| 19261 | /* 38176*/ OPC_EmitInteger, MVT::i32, 0, |
| 19262 | /* 38179*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19263 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19264 | // Src: (st i32:{ *:[i32] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 4 |
| 19265 | // Dst: (STORE16_I32_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 19266 | /* 38188*/ 0, /*End of Scope*/ |
| 19267 | /* 38189*/ 0, /*End of Scope*/ |
| 19268 | /* 38190*/ /*Scope*/ 74, /*->38265*/ |
| 19269 | /* 38191*/ OPC_CheckChild2Type, MVT::i64, |
| 19270 | /* 38193*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19271 | /* 38195*/ OPC_Scope, 20, /*->38217*/ // 2 children in Scope |
| 19272 | /* 38197*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19273 | /* 38199*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19274 | /* 38201*/ OPC_EmitMergeInputChains1_0, |
| 19275 | /* 38202*/ OPC_EmitInteger, MVT::i32, 0, |
| 19276 | /* 38205*/ OPC_EmitInteger, MVT::i64, 0, |
| 19277 | /* 38208*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19278 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19279 | // Src: (st i32:{ *:[i32] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 19280 | // Dst: (STORE_I32_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 19281 | /* 38217*/ /*Scope*/ 46, /*->38264*/ |
| 19282 | /* 38218*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19283 | /* 38220*/ OPC_Scope, 20, /*->38242*/ // 2 children in Scope |
| 19284 | /* 38222*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19285 | /* 38224*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19286 | /* 38226*/ OPC_EmitMergeInputChains1_0, |
| 19287 | /* 38227*/ OPC_EmitInteger, MVT::i32, 0, |
| 19288 | /* 38230*/ OPC_EmitInteger, MVT::i64, 0, |
| 19289 | /* 38233*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19290 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19291 | // Src: (st i32:{ *:[i32] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 4 |
| 19292 | // Dst: (STORE8_I32_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 19293 | /* 38242*/ /*Scope*/ 20, /*->38263*/ |
| 19294 | /* 38243*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19295 | /* 38245*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19296 | /* 38247*/ OPC_EmitMergeInputChains1_0, |
| 19297 | /* 38248*/ OPC_EmitInteger, MVT::i32, 0, |
| 19298 | /* 38251*/ OPC_EmitInteger, MVT::i64, 0, |
| 19299 | /* 38254*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19300 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19301 | // Src: (st i32:{ *:[i32] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 4 |
| 19302 | // Dst: (STORE16_I32_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 19303 | /* 38263*/ 0, /*End of Scope*/ |
| 19304 | /* 38264*/ 0, /*End of Scope*/ |
| 19305 | /* 38265*/ 0, /*End of Scope*/ |
| 19306 | /* 38266*/ 0, /*End of Scope*/ |
| 19307 | /* 38267*/ /*Scope*/ 90|128,8/*1114*/, /*->39383*/ |
| 19308 | /* 38269*/ OPC_CheckChild1Type, MVT::i64, |
| 19309 | /* 38271*/ OPC_Scope, 10|128,5/*650*/, /*->38924*/ // 2 children in Scope |
| 19310 | /* 38274*/ OPC_MoveChild2, |
| 19311 | /* 38275*/ OPC_SwitchOpcode /*3 cases */, 67|128,1/*195*/, TARGET_VAL(ISD::ADD),// ->38475 |
| 19312 | /* 38280*/ OPC_RecordChild0, // #2 = $addr |
| 19313 | /* 38281*/ OPC_RecordChild1, // #3 = $off |
| 19314 | /* 38282*/ OPC_MoveChild1, |
| 19315 | /* 38283*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 19316 | /* 38286*/ OPC_MoveParent, |
| 19317 | /* 38287*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 19318 | /* 38289*/ OPC_SwitchType /*2 cases */, 90, MVT::i32,// ->38382 |
| 19319 | /* 38292*/ OPC_MoveParent, |
| 19320 | /* 38293*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19321 | /* 38295*/ OPC_Scope, 19, /*->38316*/ // 2 children in Scope |
| 19322 | /* 38297*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19323 | /* 38299*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19324 | /* 38301*/ OPC_EmitMergeInputChains1_0, |
| 19325 | /* 38302*/ OPC_EmitInteger, MVT::i32, 0, |
| 19326 | /* 38305*/ OPC_EmitConvertToTarget, 3, |
| 19327 | /* 38307*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19328 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19329 | // Src: (st i64:{ *:[i64] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 19330 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 19331 | /* 38316*/ /*Scope*/ 64, /*->38381*/ |
| 19332 | /* 38317*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19333 | /* 38319*/ OPC_Scope, 19, /*->38340*/ // 3 children in Scope |
| 19334 | /* 38321*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19335 | /* 38323*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19336 | /* 38325*/ OPC_EmitMergeInputChains1_0, |
| 19337 | /* 38326*/ OPC_EmitInteger, MVT::i32, 0, |
| 19338 | /* 38329*/ OPC_EmitConvertToTarget, 3, |
| 19339 | /* 38331*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19340 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19341 | // Src: (st i64:{ *:[i64] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 11 |
| 19342 | // Dst: (STORE8_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 19343 | /* 38340*/ /*Scope*/ 19, /*->38360*/ |
| 19344 | /* 38341*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19345 | /* 38343*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19346 | /* 38345*/ OPC_EmitMergeInputChains1_0, |
| 19347 | /* 38346*/ OPC_EmitInteger, MVT::i32, 0, |
| 19348 | /* 38349*/ OPC_EmitConvertToTarget, 3, |
| 19349 | /* 38351*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19350 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19351 | // Src: (st i64:{ *:[i64] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 11 |
| 19352 | // Dst: (STORE16_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 19353 | /* 38360*/ /*Scope*/ 19, /*->38380*/ |
| 19354 | /* 38361*/ OPC_CheckPredicate, 6, // Predicate_truncstorei32 |
| 19355 | /* 38363*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19356 | /* 38365*/ OPC_EmitMergeInputChains1_0, |
| 19357 | /* 38366*/ OPC_EmitInteger, MVT::i32, 0, |
| 19358 | /* 38369*/ OPC_EmitConvertToTarget, 3, |
| 19359 | /* 38371*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE32_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19360 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19361 | // Src: (st i64:{ *:[i64] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei32>> - Complexity = 11 |
| 19362 | // Dst: (STORE32_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 19363 | /* 38380*/ 0, /*End of Scope*/ |
| 19364 | /* 38381*/ 0, /*End of Scope*/ |
| 19365 | /* 38382*/ /*SwitchType*/ 90, MVT::i64,// ->38474 |
| 19366 | /* 38384*/ OPC_MoveParent, |
| 19367 | /* 38385*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19368 | /* 38387*/ OPC_Scope, 19, /*->38408*/ // 2 children in Scope |
| 19369 | /* 38389*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19370 | /* 38391*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19371 | /* 38393*/ OPC_EmitMergeInputChains1_0, |
| 19372 | /* 38394*/ OPC_EmitInteger, MVT::i32, 0, |
| 19373 | /* 38397*/ OPC_EmitConvertToTarget, 3, |
| 19374 | /* 38399*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19375 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19376 | // Src: (st i64:{ *:[i64] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 19377 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 19378 | /* 38408*/ /*Scope*/ 64, /*->38473*/ |
| 19379 | /* 38409*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19380 | /* 38411*/ OPC_Scope, 19, /*->38432*/ // 3 children in Scope |
| 19381 | /* 38413*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19382 | /* 38415*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19383 | /* 38417*/ OPC_EmitMergeInputChains1_0, |
| 19384 | /* 38418*/ OPC_EmitInteger, MVT::i32, 0, |
| 19385 | /* 38421*/ OPC_EmitConvertToTarget, 3, |
| 19386 | /* 38423*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19387 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19388 | // Src: (st i64:{ *:[i64] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 11 |
| 19389 | // Dst: (STORE8_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 19390 | /* 38432*/ /*Scope*/ 19, /*->38452*/ |
| 19391 | /* 38433*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19392 | /* 38435*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19393 | /* 38437*/ OPC_EmitMergeInputChains1_0, |
| 19394 | /* 38438*/ OPC_EmitInteger, MVT::i32, 0, |
| 19395 | /* 38441*/ OPC_EmitConvertToTarget, 3, |
| 19396 | /* 38443*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19397 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19398 | // Src: (st i64:{ *:[i64] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 11 |
| 19399 | // Dst: (STORE16_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 19400 | /* 38452*/ /*Scope*/ 19, /*->38472*/ |
| 19401 | /* 38453*/ OPC_CheckPredicate, 6, // Predicate_truncstorei32 |
| 19402 | /* 38455*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19403 | /* 38457*/ OPC_EmitMergeInputChains1_0, |
| 19404 | /* 38458*/ OPC_EmitInteger, MVT::i32, 0, |
| 19405 | /* 38461*/ OPC_EmitConvertToTarget, 3, |
| 19406 | /* 38463*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE32_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19407 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19408 | // Src: (st i64:{ *:[i64] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei32>> - Complexity = 11 |
| 19409 | // Dst: (STORE32_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 19410 | /* 38472*/ 0, /*End of Scope*/ |
| 19411 | /* 38473*/ 0, /*End of Scope*/ |
| 19412 | /* 38474*/ 0, // EndSwitchType |
| 19413 | /* 38475*/ /*SwitchOpcode*/ 67|128,1/*195*/, TARGET_VAL(ISD::OR),// ->38674 |
| 19414 | /* 38479*/ OPC_RecordChild0, // #2 = $addr |
| 19415 | /* 38480*/ OPC_RecordChild1, // #3 = $off |
| 19416 | /* 38481*/ OPC_MoveChild1, |
| 19417 | /* 38482*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 19418 | /* 38485*/ OPC_MoveParent, |
| 19419 | /* 38486*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 19420 | /* 38488*/ OPC_SwitchType /*2 cases */, 90, MVT::i32,// ->38581 |
| 19421 | /* 38491*/ OPC_MoveParent, |
| 19422 | /* 38492*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19423 | /* 38494*/ OPC_Scope, 19, /*->38515*/ // 2 children in Scope |
| 19424 | /* 38496*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19425 | /* 38498*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19426 | /* 38500*/ OPC_EmitMergeInputChains1_0, |
| 19427 | /* 38501*/ OPC_EmitInteger, MVT::i32, 0, |
| 19428 | /* 38504*/ OPC_EmitConvertToTarget, 3, |
| 19429 | /* 38506*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19430 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19431 | // Src: (st i64:{ *:[i64] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 19432 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 19433 | /* 38515*/ /*Scope*/ 64, /*->38580*/ |
| 19434 | /* 38516*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19435 | /* 38518*/ OPC_Scope, 19, /*->38539*/ // 3 children in Scope |
| 19436 | /* 38520*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19437 | /* 38522*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19438 | /* 38524*/ OPC_EmitMergeInputChains1_0, |
| 19439 | /* 38525*/ OPC_EmitInteger, MVT::i32, 0, |
| 19440 | /* 38528*/ OPC_EmitConvertToTarget, 3, |
| 19441 | /* 38530*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19442 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19443 | // Src: (st i64:{ *:[i64] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 11 |
| 19444 | // Dst: (STORE8_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 19445 | /* 38539*/ /*Scope*/ 19, /*->38559*/ |
| 19446 | /* 38540*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19447 | /* 38542*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19448 | /* 38544*/ OPC_EmitMergeInputChains1_0, |
| 19449 | /* 38545*/ OPC_EmitInteger, MVT::i32, 0, |
| 19450 | /* 38548*/ OPC_EmitConvertToTarget, 3, |
| 19451 | /* 38550*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19452 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19453 | // Src: (st i64:{ *:[i64] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 11 |
| 19454 | // Dst: (STORE16_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 19455 | /* 38559*/ /*Scope*/ 19, /*->38579*/ |
| 19456 | /* 38560*/ OPC_CheckPredicate, 6, // Predicate_truncstorei32 |
| 19457 | /* 38562*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19458 | /* 38564*/ OPC_EmitMergeInputChains1_0, |
| 19459 | /* 38565*/ OPC_EmitInteger, MVT::i32, 0, |
| 19460 | /* 38568*/ OPC_EmitConvertToTarget, 3, |
| 19461 | /* 38570*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE32_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19462 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19463 | // Src: (st i64:{ *:[i64] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei32>> - Complexity = 11 |
| 19464 | // Dst: (STORE32_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 19465 | /* 38579*/ 0, /*End of Scope*/ |
| 19466 | /* 38580*/ 0, /*End of Scope*/ |
| 19467 | /* 38581*/ /*SwitchType*/ 90, MVT::i64,// ->38673 |
| 19468 | /* 38583*/ OPC_MoveParent, |
| 19469 | /* 38584*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19470 | /* 38586*/ OPC_Scope, 19, /*->38607*/ // 2 children in Scope |
| 19471 | /* 38588*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19472 | /* 38590*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19473 | /* 38592*/ OPC_EmitMergeInputChains1_0, |
| 19474 | /* 38593*/ OPC_EmitInteger, MVT::i32, 0, |
| 19475 | /* 38596*/ OPC_EmitConvertToTarget, 3, |
| 19476 | /* 38598*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19477 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19478 | // Src: (st i64:{ *:[i64] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 19479 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 19480 | /* 38607*/ /*Scope*/ 64, /*->38672*/ |
| 19481 | /* 38608*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19482 | /* 38610*/ OPC_Scope, 19, /*->38631*/ // 3 children in Scope |
| 19483 | /* 38612*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19484 | /* 38614*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19485 | /* 38616*/ OPC_EmitMergeInputChains1_0, |
| 19486 | /* 38617*/ OPC_EmitInteger, MVT::i32, 0, |
| 19487 | /* 38620*/ OPC_EmitConvertToTarget, 3, |
| 19488 | /* 38622*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19489 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19490 | // Src: (st i64:{ *:[i64] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 11 |
| 19491 | // Dst: (STORE8_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 19492 | /* 38631*/ /*Scope*/ 19, /*->38651*/ |
| 19493 | /* 38632*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19494 | /* 38634*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19495 | /* 38636*/ OPC_EmitMergeInputChains1_0, |
| 19496 | /* 38637*/ OPC_EmitInteger, MVT::i32, 0, |
| 19497 | /* 38640*/ OPC_EmitConvertToTarget, 3, |
| 19498 | /* 38642*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19499 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19500 | // Src: (st i64:{ *:[i64] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 11 |
| 19501 | // Dst: (STORE16_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 19502 | /* 38651*/ /*Scope*/ 19, /*->38671*/ |
| 19503 | /* 38652*/ OPC_CheckPredicate, 6, // Predicate_truncstorei32 |
| 19504 | /* 38654*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19505 | /* 38656*/ OPC_EmitMergeInputChains1_0, |
| 19506 | /* 38657*/ OPC_EmitInteger, MVT::i32, 0, |
| 19507 | /* 38660*/ OPC_EmitConvertToTarget, 3, |
| 19508 | /* 38662*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE32_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19509 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19510 | // Src: (st i64:{ *:[i64] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei32>> - Complexity = 11 |
| 19511 | // Dst: (STORE32_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 19512 | /* 38671*/ 0, /*End of Scope*/ |
| 19513 | /* 38672*/ 0, /*End of Scope*/ |
| 19514 | /* 38673*/ 0, // EndSwitchType |
| 19515 | /* 38674*/ /*SwitchOpcode*/ 117|128,1/*245*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->38923 |
| 19516 | /* 38678*/ OPC_RecordChild0, // #2 = $off |
| 19517 | /* 38679*/ OPC_MoveChild0, |
| 19518 | /* 38680*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 19519 | /* 38683*/ OPC_MoveParent, |
| 19520 | /* 38684*/ OPC_MoveParent, |
| 19521 | /* 38685*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19522 | /* 38687*/ OPC_Scope, 56, /*->38745*/ // 2 children in Scope |
| 19523 | /* 38689*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19524 | /* 38691*/ OPC_Scope, 25, /*->38718*/ // 2 children in Scope |
| 19525 | /* 38693*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19526 | /* 38695*/ OPC_EmitMergeInputChains1_0, |
| 19527 | /* 38696*/ OPC_EmitInteger, MVT::i32, 0, |
| 19528 | /* 38699*/ OPC_EmitInteger, MVT::i32, 0, |
| 19529 | /* 38702*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19530 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 19531 | /* 38709*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19532 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19533 | // Src: (st i64:{ *:[i64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 19534 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 19535 | /* 38718*/ /*Scope*/ 25, /*->38744*/ |
| 19536 | /* 38719*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19537 | /* 38721*/ OPC_EmitMergeInputChains1_0, |
| 19538 | /* 38722*/ OPC_EmitInteger, MVT::i32, 0, |
| 19539 | /* 38725*/ OPC_EmitInteger, MVT::i64, 0, |
| 19540 | /* 38728*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19541 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 19542 | /* 38735*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19543 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19544 | // Src: (st i64:{ *:[i64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 19545 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 19546 | /* 38744*/ 0, /*End of Scope*/ |
| 19547 | /* 38745*/ /*Scope*/ 47|128,1/*175*/, /*->38922*/ |
| 19548 | /* 38747*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19549 | /* 38749*/ OPC_Scope, 56, /*->38807*/ // 3 children in Scope |
| 19550 | /* 38751*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19551 | /* 38753*/ OPC_Scope, 25, /*->38780*/ // 2 children in Scope |
| 19552 | /* 38755*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19553 | /* 38757*/ OPC_EmitMergeInputChains1_0, |
| 19554 | /* 38758*/ OPC_EmitInteger, MVT::i32, 0, |
| 19555 | /* 38761*/ OPC_EmitInteger, MVT::i32, 0, |
| 19556 | /* 38764*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19557 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 19558 | /* 38771*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19559 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19560 | // Src: (st i64:{ *:[i64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 10 |
| 19561 | // Dst: (STORE8_I64_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 19562 | /* 38780*/ /*Scope*/ 25, /*->38806*/ |
| 19563 | /* 38781*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19564 | /* 38783*/ OPC_EmitMergeInputChains1_0, |
| 19565 | /* 38784*/ OPC_EmitInteger, MVT::i32, 0, |
| 19566 | /* 38787*/ OPC_EmitInteger, MVT::i64, 0, |
| 19567 | /* 38790*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19568 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 19569 | /* 38797*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19570 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19571 | // Src: (st i64:{ *:[i64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 10 |
| 19572 | // Dst: (STORE8_I64_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 19573 | /* 38806*/ 0, /*End of Scope*/ |
| 19574 | /* 38807*/ /*Scope*/ 56, /*->38864*/ |
| 19575 | /* 38808*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19576 | /* 38810*/ OPC_Scope, 25, /*->38837*/ // 2 children in Scope |
| 19577 | /* 38812*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19578 | /* 38814*/ OPC_EmitMergeInputChains1_0, |
| 19579 | /* 38815*/ OPC_EmitInteger, MVT::i32, 0, |
| 19580 | /* 38818*/ OPC_EmitInteger, MVT::i32, 0, |
| 19581 | /* 38821*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19582 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 19583 | /* 38828*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19584 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19585 | // Src: (st i64:{ *:[i64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 10 |
| 19586 | // Dst: (STORE16_I64_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 19587 | /* 38837*/ /*Scope*/ 25, /*->38863*/ |
| 19588 | /* 38838*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19589 | /* 38840*/ OPC_EmitMergeInputChains1_0, |
| 19590 | /* 38841*/ OPC_EmitInteger, MVT::i32, 0, |
| 19591 | /* 38844*/ OPC_EmitInteger, MVT::i64, 0, |
| 19592 | /* 38847*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19593 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 19594 | /* 38854*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19595 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19596 | // Src: (st i64:{ *:[i64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 10 |
| 19597 | // Dst: (STORE16_I64_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 19598 | /* 38863*/ 0, /*End of Scope*/ |
| 19599 | /* 38864*/ /*Scope*/ 56, /*->38921*/ |
| 19600 | /* 38865*/ OPC_CheckPredicate, 6, // Predicate_truncstorei32 |
| 19601 | /* 38867*/ OPC_Scope, 25, /*->38894*/ // 2 children in Scope |
| 19602 | /* 38869*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19603 | /* 38871*/ OPC_EmitMergeInputChains1_0, |
| 19604 | /* 38872*/ OPC_EmitInteger, MVT::i32, 0, |
| 19605 | /* 38875*/ OPC_EmitInteger, MVT::i32, 0, |
| 19606 | /* 38878*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19607 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 19608 | /* 38885*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE32_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19609 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19610 | // Src: (st i64:{ *:[i64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei32>> - Complexity = 10 |
| 19611 | // Dst: (STORE32_I64_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 19612 | /* 38894*/ /*Scope*/ 25, /*->38920*/ |
| 19613 | /* 38895*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19614 | /* 38897*/ OPC_EmitMergeInputChains1_0, |
| 19615 | /* 38898*/ OPC_EmitInteger, MVT::i32, 0, |
| 19616 | /* 38901*/ OPC_EmitInteger, MVT::i64, 0, |
| 19617 | /* 38904*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19618 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 19619 | /* 38911*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE32_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19620 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19621 | // Src: (st i64:{ *:[i64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei32>> - Complexity = 10 |
| 19622 | // Dst: (STORE32_I64_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 19623 | /* 38920*/ 0, /*End of Scope*/ |
| 19624 | /* 38921*/ 0, /*End of Scope*/ |
| 19625 | /* 38922*/ 0, /*End of Scope*/ |
| 19626 | /* 38923*/ 0, // EndSwitchOpcode |
| 19627 | /* 38924*/ /*Scope*/ 72|128,3/*456*/, /*->39382*/ |
| 19628 | /* 38926*/ OPC_RecordChild2, // #2 = $off |
| 19629 | /* 38927*/ OPC_Scope, 3|128,2/*259*/, /*->39189*/ // 3 children in Scope |
| 19630 | /* 38930*/ OPC_MoveChild2, |
| 19631 | /* 38931*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 19632 | /* 38934*/ OPC_MoveParent, |
| 19633 | /* 38935*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19634 | /* 38937*/ OPC_Scope, 60, /*->38999*/ // 2 children in Scope |
| 19635 | /* 38939*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19636 | /* 38941*/ OPC_Scope, 27, /*->38970*/ // 2 children in Scope |
| 19637 | /* 38943*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19638 | /* 38945*/ OPC_EmitMergeInputChains1_0, |
| 19639 | /* 38946*/ OPC_EmitInteger, MVT::i32, 0, |
| 19640 | /* 38949*/ OPC_EmitConvertToTarget, 2, |
| 19641 | /* 38951*/ OPC_EmitInteger, MVT::i32, 0, |
| 19642 | /* 38954*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19643 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 19644 | /* 38961*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19645 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19646 | // Src: (st i64:{ *:[i64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 19647 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 19648 | /* 38970*/ /*Scope*/ 27, /*->38998*/ |
| 19649 | /* 38971*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19650 | /* 38973*/ OPC_EmitMergeInputChains1_0, |
| 19651 | /* 38974*/ OPC_EmitInteger, MVT::i32, 0, |
| 19652 | /* 38977*/ OPC_EmitConvertToTarget, 2, |
| 19653 | /* 38979*/ OPC_EmitInteger, MVT::i64, 0, |
| 19654 | /* 38982*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19655 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 19656 | /* 38989*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19657 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19658 | // Src: (st i64:{ *:[i64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 19659 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 19660 | /* 38998*/ 0, /*End of Scope*/ |
| 19661 | /* 38999*/ /*Scope*/ 59|128,1/*187*/, /*->39188*/ |
| 19662 | /* 39001*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19663 | /* 39003*/ OPC_Scope, 60, /*->39065*/ // 3 children in Scope |
| 19664 | /* 39005*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19665 | /* 39007*/ OPC_Scope, 27, /*->39036*/ // 2 children in Scope |
| 19666 | /* 39009*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19667 | /* 39011*/ OPC_EmitMergeInputChains1_0, |
| 19668 | /* 39012*/ OPC_EmitInteger, MVT::i32, 0, |
| 19669 | /* 39015*/ OPC_EmitConvertToTarget, 2, |
| 19670 | /* 39017*/ OPC_EmitInteger, MVT::i32, 0, |
| 19671 | /* 39020*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19672 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 19673 | /* 39027*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19674 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19675 | // Src: (st i64:{ *:[i64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 7 |
| 19676 | // Dst: (STORE8_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 19677 | /* 39036*/ /*Scope*/ 27, /*->39064*/ |
| 19678 | /* 39037*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19679 | /* 39039*/ OPC_EmitMergeInputChains1_0, |
| 19680 | /* 39040*/ OPC_EmitInteger, MVT::i32, 0, |
| 19681 | /* 39043*/ OPC_EmitConvertToTarget, 2, |
| 19682 | /* 39045*/ OPC_EmitInteger, MVT::i64, 0, |
| 19683 | /* 39048*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19684 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 19685 | /* 39055*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19686 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19687 | // Src: (st i64:{ *:[i64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 7 |
| 19688 | // Dst: (STORE8_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 19689 | /* 39064*/ 0, /*End of Scope*/ |
| 19690 | /* 39065*/ /*Scope*/ 60, /*->39126*/ |
| 19691 | /* 39066*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19692 | /* 39068*/ OPC_Scope, 27, /*->39097*/ // 2 children in Scope |
| 19693 | /* 39070*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19694 | /* 39072*/ OPC_EmitMergeInputChains1_0, |
| 19695 | /* 39073*/ OPC_EmitInteger, MVT::i32, 0, |
| 19696 | /* 39076*/ OPC_EmitConvertToTarget, 2, |
| 19697 | /* 39078*/ OPC_EmitInteger, MVT::i32, 0, |
| 19698 | /* 39081*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19699 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 19700 | /* 39088*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19701 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19702 | // Src: (st i64:{ *:[i64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 7 |
| 19703 | // Dst: (STORE16_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 19704 | /* 39097*/ /*Scope*/ 27, /*->39125*/ |
| 19705 | /* 39098*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19706 | /* 39100*/ OPC_EmitMergeInputChains1_0, |
| 19707 | /* 39101*/ OPC_EmitInteger, MVT::i32, 0, |
| 19708 | /* 39104*/ OPC_EmitConvertToTarget, 2, |
| 19709 | /* 39106*/ OPC_EmitInteger, MVT::i64, 0, |
| 19710 | /* 39109*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19711 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 19712 | /* 39116*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19713 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19714 | // Src: (st i64:{ *:[i64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 7 |
| 19715 | // Dst: (STORE16_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 19716 | /* 39125*/ 0, /*End of Scope*/ |
| 19717 | /* 39126*/ /*Scope*/ 60, /*->39187*/ |
| 19718 | /* 39127*/ OPC_CheckPredicate, 6, // Predicate_truncstorei32 |
| 19719 | /* 39129*/ OPC_Scope, 27, /*->39158*/ // 2 children in Scope |
| 19720 | /* 39131*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19721 | /* 39133*/ OPC_EmitMergeInputChains1_0, |
| 19722 | /* 39134*/ OPC_EmitInteger, MVT::i32, 0, |
| 19723 | /* 39137*/ OPC_EmitConvertToTarget, 2, |
| 19724 | /* 39139*/ OPC_EmitInteger, MVT::i32, 0, |
| 19725 | /* 39142*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19726 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 19727 | /* 39149*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE32_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19728 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19729 | // Src: (st i64:{ *:[i64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei32>> - Complexity = 7 |
| 19730 | // Dst: (STORE32_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 19731 | /* 39158*/ /*Scope*/ 27, /*->39186*/ |
| 19732 | /* 39159*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19733 | /* 39161*/ OPC_EmitMergeInputChains1_0, |
| 19734 | /* 39162*/ OPC_EmitInteger, MVT::i32, 0, |
| 19735 | /* 39165*/ OPC_EmitConvertToTarget, 2, |
| 19736 | /* 39167*/ OPC_EmitInteger, MVT::i64, 0, |
| 19737 | /* 39170*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19738 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 19739 | /* 39177*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE32_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19740 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19741 | // Src: (st i64:{ *:[i64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei32>> - Complexity = 7 |
| 19742 | // Dst: (STORE32_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 19743 | /* 39186*/ 0, /*End of Scope*/ |
| 19744 | /* 39187*/ 0, /*End of Scope*/ |
| 19745 | /* 39188*/ 0, /*End of Scope*/ |
| 19746 | /* 39189*/ /*Scope*/ 95, /*->39285*/ |
| 19747 | /* 39190*/ OPC_CheckChild2Type, MVT::i32, |
| 19748 | /* 39192*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19749 | /* 39194*/ OPC_Scope, 20, /*->39216*/ // 2 children in Scope |
| 19750 | /* 39196*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19751 | /* 39198*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19752 | /* 39200*/ OPC_EmitMergeInputChains1_0, |
| 19753 | /* 39201*/ OPC_EmitInteger, MVT::i32, 0, |
| 19754 | /* 39204*/ OPC_EmitInteger, MVT::i32, 0, |
| 19755 | /* 39207*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19756 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19757 | // Src: (st i64:{ *:[i64] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 19758 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 19759 | /* 39216*/ /*Scope*/ 67, /*->39284*/ |
| 19760 | /* 39217*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19761 | /* 39219*/ OPC_Scope, 20, /*->39241*/ // 3 children in Scope |
| 19762 | /* 39221*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19763 | /* 39223*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19764 | /* 39225*/ OPC_EmitMergeInputChains1_0, |
| 19765 | /* 39226*/ OPC_EmitInteger, MVT::i32, 0, |
| 19766 | /* 39229*/ OPC_EmitInteger, MVT::i32, 0, |
| 19767 | /* 39232*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19768 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19769 | // Src: (st i64:{ *:[i64] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 4 |
| 19770 | // Dst: (STORE8_I64_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 19771 | /* 39241*/ /*Scope*/ 20, /*->39262*/ |
| 19772 | /* 39242*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19773 | /* 39244*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19774 | /* 39246*/ OPC_EmitMergeInputChains1_0, |
| 19775 | /* 39247*/ OPC_EmitInteger, MVT::i32, 0, |
| 19776 | /* 39250*/ OPC_EmitInteger, MVT::i32, 0, |
| 19777 | /* 39253*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19778 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19779 | // Src: (st i64:{ *:[i64] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 4 |
| 19780 | // Dst: (STORE16_I64_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 19781 | /* 39262*/ /*Scope*/ 20, /*->39283*/ |
| 19782 | /* 39263*/ OPC_CheckPredicate, 6, // Predicate_truncstorei32 |
| 19783 | /* 39265*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19784 | /* 39267*/ OPC_EmitMergeInputChains1_0, |
| 19785 | /* 39268*/ OPC_EmitInteger, MVT::i32, 0, |
| 19786 | /* 39271*/ OPC_EmitInteger, MVT::i32, 0, |
| 19787 | /* 39274*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE32_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19788 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19789 | // Src: (st i64:{ *:[i64] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei32>> - Complexity = 4 |
| 19790 | // Dst: (STORE32_I64_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 19791 | /* 39283*/ 0, /*End of Scope*/ |
| 19792 | /* 39284*/ 0, /*End of Scope*/ |
| 19793 | /* 39285*/ /*Scope*/ 95, /*->39381*/ |
| 19794 | /* 39286*/ OPC_CheckChild2Type, MVT::i64, |
| 19795 | /* 39288*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19796 | /* 39290*/ OPC_Scope, 20, /*->39312*/ // 2 children in Scope |
| 19797 | /* 39292*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19798 | /* 39294*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19799 | /* 39296*/ OPC_EmitMergeInputChains1_0, |
| 19800 | /* 39297*/ OPC_EmitInteger, MVT::i32, 0, |
| 19801 | /* 39300*/ OPC_EmitInteger, MVT::i64, 0, |
| 19802 | /* 39303*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19803 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19804 | // Src: (st i64:{ *:[i64] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 19805 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 19806 | /* 39312*/ /*Scope*/ 67, /*->39380*/ |
| 19807 | /* 39313*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 19808 | /* 39315*/ OPC_Scope, 20, /*->39337*/ // 3 children in Scope |
| 19809 | /* 39317*/ OPC_CheckPredicate, 1, // Predicate_truncstorei8 |
| 19810 | /* 39319*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19811 | /* 39321*/ OPC_EmitMergeInputChains1_0, |
| 19812 | /* 39322*/ OPC_EmitInteger, MVT::i32, 0, |
| 19813 | /* 39325*/ OPC_EmitInteger, MVT::i64, 0, |
| 19814 | /* 39328*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19815 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19816 | // Src: (st i64:{ *:[i64] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>> - Complexity = 4 |
| 19817 | // Dst: (STORE8_I64_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 19818 | /* 39337*/ /*Scope*/ 20, /*->39358*/ |
| 19819 | /* 39338*/ OPC_CheckPredicate, 2, // Predicate_truncstorei16 |
| 19820 | /* 39340*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19821 | /* 39342*/ OPC_EmitMergeInputChains1_0, |
| 19822 | /* 39343*/ OPC_EmitInteger, MVT::i32, 0, |
| 19823 | /* 39346*/ OPC_EmitInteger, MVT::i64, 0, |
| 19824 | /* 39349*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19825 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19826 | // Src: (st i64:{ *:[i64] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>> - Complexity = 4 |
| 19827 | // Dst: (STORE16_I64_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 19828 | /* 39358*/ /*Scope*/ 20, /*->39379*/ |
| 19829 | /* 39359*/ OPC_CheckPredicate, 6, // Predicate_truncstorei32 |
| 19830 | /* 39361*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19831 | /* 39363*/ OPC_EmitMergeInputChains1_0, |
| 19832 | /* 39364*/ OPC_EmitInteger, MVT::i32, 0, |
| 19833 | /* 39367*/ OPC_EmitInteger, MVT::i64, 0, |
| 19834 | /* 39370*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE32_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19835 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19836 | // Src: (st i64:{ *:[i64] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei32>> - Complexity = 4 |
| 19837 | // Dst: (STORE32_I64_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 19838 | /* 39379*/ 0, /*End of Scope*/ |
| 19839 | /* 39380*/ 0, /*End of Scope*/ |
| 19840 | /* 39381*/ 0, /*End of Scope*/ |
| 19841 | /* 39382*/ 0, /*End of Scope*/ |
| 19842 | /* 39383*/ /*Scope*/ 67|128,2/*323*/, /*->39708*/ |
| 19843 | /* 39385*/ OPC_CheckChild1Type, MVT::f32, |
| 19844 | /* 39387*/ OPC_Scope, 67|128,1/*195*/, /*->39585*/ // 2 children in Scope |
| 19845 | /* 39390*/ OPC_MoveChild2, |
| 19846 | /* 39391*/ OPC_SwitchOpcode /*3 cases */, 59, TARGET_VAL(ISD::ADD),// ->39454 |
| 19847 | /* 39395*/ OPC_RecordChild0, // #2 = $addr |
| 19848 | /* 39396*/ OPC_RecordChild1, // #3 = $off |
| 19849 | /* 39397*/ OPC_MoveChild1, |
| 19850 | /* 39398*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 19851 | /* 39401*/ OPC_MoveParent, |
| 19852 | /* 39402*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 19853 | /* 39404*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->39429 |
| 19854 | /* 39407*/ OPC_MoveParent, |
| 19855 | /* 39408*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19856 | /* 39410*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19857 | /* 39412*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19858 | /* 39414*/ OPC_EmitMergeInputChains1_0, |
| 19859 | /* 39415*/ OPC_EmitInteger, MVT::i32, 0, |
| 19860 | /* 39418*/ OPC_EmitConvertToTarget, 3, |
| 19861 | /* 39420*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19862 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19863 | // Src: (st f32:{ *:[f32] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 19864 | // Dst: (STORE_F32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, f32:{ *:[f32] }:$val) |
| 19865 | /* 39429*/ /*SwitchType*/ 22, MVT::i64,// ->39453 |
| 19866 | /* 39431*/ OPC_MoveParent, |
| 19867 | /* 39432*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19868 | /* 39434*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19869 | /* 39436*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19870 | /* 39438*/ OPC_EmitMergeInputChains1_0, |
| 19871 | /* 39439*/ OPC_EmitInteger, MVT::i32, 0, |
| 19872 | /* 39442*/ OPC_EmitConvertToTarget, 3, |
| 19873 | /* 39444*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19874 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19875 | // Src: (st f32:{ *:[f32] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 19876 | // Dst: (STORE_F32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, f32:{ *:[f32] }:$val) |
| 19877 | /* 39453*/ 0, // EndSwitchType |
| 19878 | /* 39454*/ /*SwitchOpcode*/ 59, TARGET_VAL(ISD::OR),// ->39516 |
| 19879 | /* 39457*/ OPC_RecordChild0, // #2 = $addr |
| 19880 | /* 39458*/ OPC_RecordChild1, // #3 = $off |
| 19881 | /* 39459*/ OPC_MoveChild1, |
| 19882 | /* 39460*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 19883 | /* 39463*/ OPC_MoveParent, |
| 19884 | /* 39464*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 19885 | /* 39466*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->39491 |
| 19886 | /* 39469*/ OPC_MoveParent, |
| 19887 | /* 39470*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19888 | /* 39472*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19889 | /* 39474*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19890 | /* 39476*/ OPC_EmitMergeInputChains1_0, |
| 19891 | /* 39477*/ OPC_EmitInteger, MVT::i32, 0, |
| 19892 | /* 39480*/ OPC_EmitConvertToTarget, 3, |
| 19893 | /* 39482*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19894 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19895 | // Src: (st f32:{ *:[f32] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 19896 | // Dst: (STORE_F32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, f32:{ *:[f32] }:$val) |
| 19897 | /* 39491*/ /*SwitchType*/ 22, MVT::i64,// ->39515 |
| 19898 | /* 39493*/ OPC_MoveParent, |
| 19899 | /* 39494*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19900 | /* 39496*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19901 | /* 39498*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19902 | /* 39500*/ OPC_EmitMergeInputChains1_0, |
| 19903 | /* 39501*/ OPC_EmitInteger, MVT::i32, 0, |
| 19904 | /* 39504*/ OPC_EmitConvertToTarget, 3, |
| 19905 | /* 39506*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19906 | 4/*#Ops*/, 4, 5, 2, 1, |
| 19907 | // Src: (st f32:{ *:[f32] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 19908 | // Dst: (STORE_F32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, f32:{ *:[f32] }:$val) |
| 19909 | /* 39515*/ 0, // EndSwitchType |
| 19910 | /* 39516*/ /*SwitchOpcode*/ 65, TARGET_VAL(WebAssemblyISD::Wrapper),// ->39584 |
| 19911 | /* 39519*/ OPC_RecordChild0, // #2 = $off |
| 19912 | /* 39520*/ OPC_MoveChild0, |
| 19913 | /* 39521*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 19914 | /* 39524*/ OPC_MoveParent, |
| 19915 | /* 39525*/ OPC_MoveParent, |
| 19916 | /* 39526*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19917 | /* 39528*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19918 | /* 39530*/ OPC_Scope, 25, /*->39557*/ // 2 children in Scope |
| 19919 | /* 39532*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19920 | /* 39534*/ OPC_EmitMergeInputChains1_0, |
| 19921 | /* 39535*/ OPC_EmitInteger, MVT::i32, 0, |
| 19922 | /* 39538*/ OPC_EmitInteger, MVT::i32, 0, |
| 19923 | /* 39541*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19924 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 19925 | /* 39548*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19926 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19927 | // Src: (st f32:{ *:[f32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 19928 | // Dst: (STORE_F32_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), f32:{ *:[f32] }:$val) |
| 19929 | /* 39557*/ /*Scope*/ 25, /*->39583*/ |
| 19930 | /* 39558*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 19931 | /* 39560*/ OPC_EmitMergeInputChains1_0, |
| 19932 | /* 39561*/ OPC_EmitInteger, MVT::i32, 0, |
| 19933 | /* 39564*/ OPC_EmitInteger, MVT::i64, 0, |
| 19934 | /* 39567*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19935 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 19936 | /* 39574*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19937 | 4/*#Ops*/, 3, 2, 5, 1, |
| 19938 | // Src: (st f32:{ *:[f32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 19939 | // Dst: (STORE_F32_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), f32:{ *:[f32] }:$val) |
| 19940 | /* 39583*/ 0, /*End of Scope*/ |
| 19941 | /* 39584*/ 0, // EndSwitchOpcode |
| 19942 | /* 39585*/ /*Scope*/ 121, /*->39707*/ |
| 19943 | /* 39586*/ OPC_RecordChild2, // #2 = $off |
| 19944 | /* 39587*/ OPC_Scope, 67, /*->39656*/ // 3 children in Scope |
| 19945 | /* 39589*/ OPC_MoveChild2, |
| 19946 | /* 39590*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 19947 | /* 39593*/ OPC_MoveParent, |
| 19948 | /* 39594*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19949 | /* 39596*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19950 | /* 39598*/ OPC_Scope, 27, /*->39627*/ // 2 children in Scope |
| 19951 | /* 39600*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19952 | /* 39602*/ OPC_EmitMergeInputChains1_0, |
| 19953 | /* 39603*/ OPC_EmitInteger, MVT::i32, 0, |
| 19954 | /* 39606*/ OPC_EmitConvertToTarget, 2, |
| 19955 | /* 39608*/ OPC_EmitInteger, MVT::i32, 0, |
| 19956 | /* 39611*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 19957 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 19958 | /* 39618*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19959 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19960 | // Src: (st f32:{ *:[f32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 19961 | // Dst: (STORE_F32_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), f32:{ *:[f32] }:$val) |
| 19962 | /* 39627*/ /*Scope*/ 27, /*->39655*/ |
| 19963 | /* 39628*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19964 | /* 39630*/ OPC_EmitMergeInputChains1_0, |
| 19965 | /* 39631*/ OPC_EmitInteger, MVT::i32, 0, |
| 19966 | /* 39634*/ OPC_EmitConvertToTarget, 2, |
| 19967 | /* 39636*/ OPC_EmitInteger, MVT::i64, 0, |
| 19968 | /* 39639*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 19969 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 19970 | /* 39646*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19971 | 4/*#Ops*/, 3, 4, 6, 1, |
| 19972 | // Src: (st f32:{ *:[f32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 19973 | // Dst: (STORE_F32_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), f32:{ *:[f32] }:$val) |
| 19974 | /* 39655*/ 0, /*End of Scope*/ |
| 19975 | /* 39656*/ /*Scope*/ 24, /*->39681*/ |
| 19976 | /* 39657*/ OPC_CheckChild2Type, MVT::i32, |
| 19977 | /* 39659*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19978 | /* 39661*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19979 | /* 39663*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 19980 | /* 39665*/ OPC_EmitMergeInputChains1_0, |
| 19981 | /* 39666*/ OPC_EmitInteger, MVT::i32, 0, |
| 19982 | /* 39669*/ OPC_EmitInteger, MVT::i32, 0, |
| 19983 | /* 39672*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 19984 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19985 | // Src: (st f32:{ *:[f32] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 19986 | // Dst: (STORE_F32_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, f32:{ *:[f32] }:$val) |
| 19987 | /* 39681*/ /*Scope*/ 24, /*->39706*/ |
| 19988 | /* 39682*/ OPC_CheckChild2Type, MVT::i64, |
| 19989 | /* 39684*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 19990 | /* 39686*/ OPC_CheckPredicate, 19, // Predicate_store |
| 19991 | /* 39688*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 19992 | /* 39690*/ OPC_EmitMergeInputChains1_0, |
| 19993 | /* 39691*/ OPC_EmitInteger, MVT::i32, 0, |
| 19994 | /* 39694*/ OPC_EmitInteger, MVT::i64, 0, |
| 19995 | /* 39697*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 19996 | 4/*#Ops*/, 3, 4, 2, 1, |
| 19997 | // Src: (st f32:{ *:[f32] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 19998 | // Dst: (STORE_F32_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, f32:{ *:[f32] }:$val) |
| 19999 | /* 39706*/ 0, /*End of Scope*/ |
| 20000 | /* 39707*/ 0, /*End of Scope*/ |
| 20001 | /* 39708*/ /*Scope*/ 67|128,2/*323*/, /*->40033*/ |
| 20002 | /* 39710*/ OPC_CheckChild1Type, MVT::f64, |
| 20003 | /* 39712*/ OPC_Scope, 67|128,1/*195*/, /*->39910*/ // 2 children in Scope |
| 20004 | /* 39715*/ OPC_MoveChild2, |
| 20005 | /* 39716*/ OPC_SwitchOpcode /*3 cases */, 59, TARGET_VAL(ISD::ADD),// ->39779 |
| 20006 | /* 39720*/ OPC_RecordChild0, // #2 = $addr |
| 20007 | /* 39721*/ OPC_RecordChild1, // #3 = $off |
| 20008 | /* 39722*/ OPC_MoveChild1, |
| 20009 | /* 39723*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 20010 | /* 39726*/ OPC_MoveParent, |
| 20011 | /* 39727*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 20012 | /* 39729*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->39754 |
| 20013 | /* 39732*/ OPC_MoveParent, |
| 20014 | /* 39733*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20015 | /* 39735*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20016 | /* 39737*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20017 | /* 39739*/ OPC_EmitMergeInputChains1_0, |
| 20018 | /* 39740*/ OPC_EmitInteger, MVT::i32, 0, |
| 20019 | /* 39743*/ OPC_EmitConvertToTarget, 3, |
| 20020 | /* 39745*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20021 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20022 | // Src: (st f64:{ *:[f64] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20023 | // Dst: (STORE_F64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, f64:{ *:[f64] }:$val) |
| 20024 | /* 39754*/ /*SwitchType*/ 22, MVT::i64,// ->39778 |
| 20025 | /* 39756*/ OPC_MoveParent, |
| 20026 | /* 39757*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20027 | /* 39759*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20028 | /* 39761*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20029 | /* 39763*/ OPC_EmitMergeInputChains1_0, |
| 20030 | /* 39764*/ OPC_EmitInteger, MVT::i32, 0, |
| 20031 | /* 39767*/ OPC_EmitConvertToTarget, 3, |
| 20032 | /* 39769*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20033 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20034 | // Src: (st f64:{ *:[f64] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20035 | // Dst: (STORE_F64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, f64:{ *:[f64] }:$val) |
| 20036 | /* 39778*/ 0, // EndSwitchType |
| 20037 | /* 39779*/ /*SwitchOpcode*/ 59, TARGET_VAL(ISD::OR),// ->39841 |
| 20038 | /* 39782*/ OPC_RecordChild0, // #2 = $addr |
| 20039 | /* 39783*/ OPC_RecordChild1, // #3 = $off |
| 20040 | /* 39784*/ OPC_MoveChild1, |
| 20041 | /* 39785*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 20042 | /* 39788*/ OPC_MoveParent, |
| 20043 | /* 39789*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 20044 | /* 39791*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->39816 |
| 20045 | /* 39794*/ OPC_MoveParent, |
| 20046 | /* 39795*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20047 | /* 39797*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20048 | /* 39799*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20049 | /* 39801*/ OPC_EmitMergeInputChains1_0, |
| 20050 | /* 39802*/ OPC_EmitInteger, MVT::i32, 0, |
| 20051 | /* 39805*/ OPC_EmitConvertToTarget, 3, |
| 20052 | /* 39807*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20053 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20054 | // Src: (st f64:{ *:[f64] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20055 | // Dst: (STORE_F64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, f64:{ *:[f64] }:$val) |
| 20056 | /* 39816*/ /*SwitchType*/ 22, MVT::i64,// ->39840 |
| 20057 | /* 39818*/ OPC_MoveParent, |
| 20058 | /* 39819*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20059 | /* 39821*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20060 | /* 39823*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20061 | /* 39825*/ OPC_EmitMergeInputChains1_0, |
| 20062 | /* 39826*/ OPC_EmitInteger, MVT::i32, 0, |
| 20063 | /* 39829*/ OPC_EmitConvertToTarget, 3, |
| 20064 | /* 39831*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20065 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20066 | // Src: (st f64:{ *:[f64] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20067 | // Dst: (STORE_F64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, f64:{ *:[f64] }:$val) |
| 20068 | /* 39840*/ 0, // EndSwitchType |
| 20069 | /* 39841*/ /*SwitchOpcode*/ 65, TARGET_VAL(WebAssemblyISD::Wrapper),// ->39909 |
| 20070 | /* 39844*/ OPC_RecordChild0, // #2 = $off |
| 20071 | /* 39845*/ OPC_MoveChild0, |
| 20072 | /* 39846*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 20073 | /* 39849*/ OPC_MoveParent, |
| 20074 | /* 39850*/ OPC_MoveParent, |
| 20075 | /* 39851*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20076 | /* 39853*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20077 | /* 39855*/ OPC_Scope, 25, /*->39882*/ // 2 children in Scope |
| 20078 | /* 39857*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 20079 | /* 39859*/ OPC_EmitMergeInputChains1_0, |
| 20080 | /* 39860*/ OPC_EmitInteger, MVT::i32, 0, |
| 20081 | /* 39863*/ OPC_EmitInteger, MVT::i32, 0, |
| 20082 | /* 39866*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20083 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 20084 | /* 39873*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20085 | 4/*#Ops*/, 3, 2, 5, 1, |
| 20086 | // Src: (st f64:{ *:[f64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 20087 | // Dst: (STORE_F64_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), f64:{ *:[f64] }:$val) |
| 20088 | /* 39882*/ /*Scope*/ 25, /*->39908*/ |
| 20089 | /* 39883*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 20090 | /* 39885*/ OPC_EmitMergeInputChains1_0, |
| 20091 | /* 39886*/ OPC_EmitInteger, MVT::i32, 0, |
| 20092 | /* 39889*/ OPC_EmitInteger, MVT::i64, 0, |
| 20093 | /* 39892*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 20094 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 20095 | /* 39899*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20096 | 4/*#Ops*/, 3, 2, 5, 1, |
| 20097 | // Src: (st f64:{ *:[f64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 20098 | // Dst: (STORE_F64_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), f64:{ *:[f64] }:$val) |
| 20099 | /* 39908*/ 0, /*End of Scope*/ |
| 20100 | /* 39909*/ 0, // EndSwitchOpcode |
| 20101 | /* 39910*/ /*Scope*/ 121, /*->40032*/ |
| 20102 | /* 39911*/ OPC_RecordChild2, // #2 = $off |
| 20103 | /* 39912*/ OPC_Scope, 67, /*->39981*/ // 3 children in Scope |
| 20104 | /* 39914*/ OPC_MoveChild2, |
| 20105 | /* 39915*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 20106 | /* 39918*/ OPC_MoveParent, |
| 20107 | /* 39919*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20108 | /* 39921*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20109 | /* 39923*/ OPC_Scope, 27, /*->39952*/ // 2 children in Scope |
| 20110 | /* 39925*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20111 | /* 39927*/ OPC_EmitMergeInputChains1_0, |
| 20112 | /* 39928*/ OPC_EmitInteger, MVT::i32, 0, |
| 20113 | /* 39931*/ OPC_EmitConvertToTarget, 2, |
| 20114 | /* 39933*/ OPC_EmitInteger, MVT::i32, 0, |
| 20115 | /* 39936*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20116 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 20117 | /* 39943*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20118 | 4/*#Ops*/, 3, 4, 6, 1, |
| 20119 | // Src: (st f64:{ *:[f64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 20120 | // Dst: (STORE_F64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), f64:{ *:[f64] }:$val) |
| 20121 | /* 39952*/ /*Scope*/ 27, /*->39980*/ |
| 20122 | /* 39953*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20123 | /* 39955*/ OPC_EmitMergeInputChains1_0, |
| 20124 | /* 39956*/ OPC_EmitInteger, MVT::i32, 0, |
| 20125 | /* 39959*/ OPC_EmitConvertToTarget, 2, |
| 20126 | /* 39961*/ OPC_EmitInteger, MVT::i64, 0, |
| 20127 | /* 39964*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 20128 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 20129 | /* 39971*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20130 | 4/*#Ops*/, 3, 4, 6, 1, |
| 20131 | // Src: (st f64:{ *:[f64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 20132 | // Dst: (STORE_F64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), f64:{ *:[f64] }:$val) |
| 20133 | /* 39980*/ 0, /*End of Scope*/ |
| 20134 | /* 39981*/ /*Scope*/ 24, /*->40006*/ |
| 20135 | /* 39982*/ OPC_CheckChild2Type, MVT::i32, |
| 20136 | /* 39984*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20137 | /* 39986*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20138 | /* 39988*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20139 | /* 39990*/ OPC_EmitMergeInputChains1_0, |
| 20140 | /* 39991*/ OPC_EmitInteger, MVT::i32, 0, |
| 20141 | /* 39994*/ OPC_EmitInteger, MVT::i32, 0, |
| 20142 | /* 39997*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20143 | 4/*#Ops*/, 3, 4, 2, 1, |
| 20144 | // Src: (st f64:{ *:[f64] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 20145 | // Dst: (STORE_F64_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, f64:{ *:[f64] }:$val) |
| 20146 | /* 40006*/ /*Scope*/ 24, /*->40031*/ |
| 20147 | /* 40007*/ OPC_CheckChild2Type, MVT::i64, |
| 20148 | /* 40009*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20149 | /* 40011*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20150 | /* 40013*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20151 | /* 40015*/ OPC_EmitMergeInputChains1_0, |
| 20152 | /* 40016*/ OPC_EmitInteger, MVT::i32, 0, |
| 20153 | /* 40019*/ OPC_EmitInteger, MVT::i64, 0, |
| 20154 | /* 40022*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20155 | 4/*#Ops*/, 3, 4, 2, 1, |
| 20156 | // Src: (st f64:{ *:[f64] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 20157 | // Dst: (STORE_F64_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, f64:{ *:[f64] }:$val) |
| 20158 | /* 40031*/ 0, /*End of Scope*/ |
| 20159 | /* 40032*/ 0, /*End of Scope*/ |
| 20160 | /* 40033*/ /*Scope*/ 67|128,2/*323*/, /*->40358*/ |
| 20161 | /* 40035*/ OPC_CheckChild1Type, MVT::v16i8, |
| 20162 | /* 40037*/ OPC_Scope, 67|128,1/*195*/, /*->40235*/ // 2 children in Scope |
| 20163 | /* 40040*/ OPC_MoveChild2, |
| 20164 | /* 40041*/ OPC_SwitchOpcode /*3 cases */, 59, TARGET_VAL(ISD::ADD),// ->40104 |
| 20165 | /* 40045*/ OPC_RecordChild0, // #2 = $addr |
| 20166 | /* 40046*/ OPC_RecordChild1, // #3 = $off |
| 20167 | /* 40047*/ OPC_MoveChild1, |
| 20168 | /* 40048*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 20169 | /* 40051*/ OPC_MoveParent, |
| 20170 | /* 40052*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 20171 | /* 40054*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->40079 |
| 20172 | /* 40057*/ OPC_MoveParent, |
| 20173 | /* 40058*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20174 | /* 40060*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20175 | /* 40062*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20176 | /* 40064*/ OPC_EmitMergeInputChains1_0, |
| 20177 | /* 40065*/ OPC_EmitInteger, MVT::i32, 0, |
| 20178 | /* 40068*/ OPC_EmitConvertToTarget, 3, |
| 20179 | /* 40070*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20180 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20181 | // Src: (st v16i8:{ *:[v16i8] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20182 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, v16i8:{ *:[v16i8] }:$val) |
| 20183 | /* 40079*/ /*SwitchType*/ 22, MVT::i64,// ->40103 |
| 20184 | /* 40081*/ OPC_MoveParent, |
| 20185 | /* 40082*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20186 | /* 40084*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20187 | /* 40086*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20188 | /* 40088*/ OPC_EmitMergeInputChains1_0, |
| 20189 | /* 40089*/ OPC_EmitInteger, MVT::i32, 0, |
| 20190 | /* 40092*/ OPC_EmitConvertToTarget, 3, |
| 20191 | /* 40094*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20192 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20193 | // Src: (st v16i8:{ *:[v16i8] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20194 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, v16i8:{ *:[v16i8] }:$val) |
| 20195 | /* 40103*/ 0, // EndSwitchType |
| 20196 | /* 40104*/ /*SwitchOpcode*/ 59, TARGET_VAL(ISD::OR),// ->40166 |
| 20197 | /* 40107*/ OPC_RecordChild0, // #2 = $addr |
| 20198 | /* 40108*/ OPC_RecordChild1, // #3 = $off |
| 20199 | /* 40109*/ OPC_MoveChild1, |
| 20200 | /* 40110*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 20201 | /* 40113*/ OPC_MoveParent, |
| 20202 | /* 40114*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 20203 | /* 40116*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->40141 |
| 20204 | /* 40119*/ OPC_MoveParent, |
| 20205 | /* 40120*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20206 | /* 40122*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20207 | /* 40124*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20208 | /* 40126*/ OPC_EmitMergeInputChains1_0, |
| 20209 | /* 40127*/ OPC_EmitInteger, MVT::i32, 0, |
| 20210 | /* 40130*/ OPC_EmitConvertToTarget, 3, |
| 20211 | /* 40132*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20212 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20213 | // Src: (st v16i8:{ *:[v16i8] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20214 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, v16i8:{ *:[v16i8] }:$val) |
| 20215 | /* 40141*/ /*SwitchType*/ 22, MVT::i64,// ->40165 |
| 20216 | /* 40143*/ OPC_MoveParent, |
| 20217 | /* 40144*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20218 | /* 40146*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20219 | /* 40148*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20220 | /* 40150*/ OPC_EmitMergeInputChains1_0, |
| 20221 | /* 40151*/ OPC_EmitInteger, MVT::i32, 0, |
| 20222 | /* 40154*/ OPC_EmitConvertToTarget, 3, |
| 20223 | /* 40156*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20224 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20225 | // Src: (st v16i8:{ *:[v16i8] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20226 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, v16i8:{ *:[v16i8] }:$val) |
| 20227 | /* 40165*/ 0, // EndSwitchType |
| 20228 | /* 40166*/ /*SwitchOpcode*/ 65, TARGET_VAL(WebAssemblyISD::Wrapper),// ->40234 |
| 20229 | /* 40169*/ OPC_RecordChild0, // #2 = $off |
| 20230 | /* 40170*/ OPC_MoveChild0, |
| 20231 | /* 40171*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 20232 | /* 40174*/ OPC_MoveParent, |
| 20233 | /* 40175*/ OPC_MoveParent, |
| 20234 | /* 40176*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20235 | /* 40178*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20236 | /* 40180*/ OPC_Scope, 25, /*->40207*/ // 2 children in Scope |
| 20237 | /* 40182*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 20238 | /* 40184*/ OPC_EmitMergeInputChains1_0, |
| 20239 | /* 40185*/ OPC_EmitInteger, MVT::i32, 0, |
| 20240 | /* 40188*/ OPC_EmitInteger, MVT::i32, 0, |
| 20241 | /* 40191*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20242 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 20243 | /* 40198*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20244 | 4/*#Ops*/, 3, 2, 5, 1, |
| 20245 | // Src: (st v16i8:{ *:[v16i8] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 20246 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), v16i8:{ *:[v16i8] }:$val) |
| 20247 | /* 40207*/ /*Scope*/ 25, /*->40233*/ |
| 20248 | /* 40208*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 20249 | /* 40210*/ OPC_EmitMergeInputChains1_0, |
| 20250 | /* 40211*/ OPC_EmitInteger, MVT::i32, 0, |
| 20251 | /* 40214*/ OPC_EmitInteger, MVT::i64, 0, |
| 20252 | /* 40217*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 20253 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 20254 | /* 40224*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20255 | 4/*#Ops*/, 3, 2, 5, 1, |
| 20256 | // Src: (st v16i8:{ *:[v16i8] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 20257 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), v16i8:{ *:[v16i8] }:$val) |
| 20258 | /* 40233*/ 0, /*End of Scope*/ |
| 20259 | /* 40234*/ 0, // EndSwitchOpcode |
| 20260 | /* 40235*/ /*Scope*/ 121, /*->40357*/ |
| 20261 | /* 40236*/ OPC_RecordChild2, // #2 = $off |
| 20262 | /* 40237*/ OPC_Scope, 67, /*->40306*/ // 3 children in Scope |
| 20263 | /* 40239*/ OPC_MoveChild2, |
| 20264 | /* 40240*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 20265 | /* 40243*/ OPC_MoveParent, |
| 20266 | /* 40244*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20267 | /* 40246*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20268 | /* 40248*/ OPC_Scope, 27, /*->40277*/ // 2 children in Scope |
| 20269 | /* 40250*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20270 | /* 40252*/ OPC_EmitMergeInputChains1_0, |
| 20271 | /* 40253*/ OPC_EmitInteger, MVT::i32, 0, |
| 20272 | /* 40256*/ OPC_EmitConvertToTarget, 2, |
| 20273 | /* 40258*/ OPC_EmitInteger, MVT::i32, 0, |
| 20274 | /* 40261*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20275 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 20276 | /* 40268*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20277 | 4/*#Ops*/, 3, 4, 6, 1, |
| 20278 | // Src: (st v16i8:{ *:[v16i8] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 20279 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), v16i8:{ *:[v16i8] }:$val) |
| 20280 | /* 40277*/ /*Scope*/ 27, /*->40305*/ |
| 20281 | /* 40278*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20282 | /* 40280*/ OPC_EmitMergeInputChains1_0, |
| 20283 | /* 40281*/ OPC_EmitInteger, MVT::i32, 0, |
| 20284 | /* 40284*/ OPC_EmitConvertToTarget, 2, |
| 20285 | /* 40286*/ OPC_EmitInteger, MVT::i64, 0, |
| 20286 | /* 40289*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 20287 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 20288 | /* 40296*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20289 | 4/*#Ops*/, 3, 4, 6, 1, |
| 20290 | // Src: (st v16i8:{ *:[v16i8] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 20291 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), v16i8:{ *:[v16i8] }:$val) |
| 20292 | /* 40305*/ 0, /*End of Scope*/ |
| 20293 | /* 40306*/ /*Scope*/ 24, /*->40331*/ |
| 20294 | /* 40307*/ OPC_CheckChild2Type, MVT::i32, |
| 20295 | /* 40309*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20296 | /* 40311*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20297 | /* 40313*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20298 | /* 40315*/ OPC_EmitMergeInputChains1_0, |
| 20299 | /* 40316*/ OPC_EmitInteger, MVT::i32, 0, |
| 20300 | /* 40319*/ OPC_EmitInteger, MVT::i32, 0, |
| 20301 | /* 40322*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20302 | 4/*#Ops*/, 3, 4, 2, 1, |
| 20303 | // Src: (st v16i8:{ *:[v16i8] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 20304 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, v16i8:{ *:[v16i8] }:$val) |
| 20305 | /* 40331*/ /*Scope*/ 24, /*->40356*/ |
| 20306 | /* 40332*/ OPC_CheckChild2Type, MVT::i64, |
| 20307 | /* 40334*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20308 | /* 40336*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20309 | /* 40338*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20310 | /* 40340*/ OPC_EmitMergeInputChains1_0, |
| 20311 | /* 40341*/ OPC_EmitInteger, MVT::i32, 0, |
| 20312 | /* 40344*/ OPC_EmitInteger, MVT::i64, 0, |
| 20313 | /* 40347*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20314 | 4/*#Ops*/, 3, 4, 2, 1, |
| 20315 | // Src: (st v16i8:{ *:[v16i8] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 20316 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, v16i8:{ *:[v16i8] }:$val) |
| 20317 | /* 40356*/ 0, /*End of Scope*/ |
| 20318 | /* 40357*/ 0, /*End of Scope*/ |
| 20319 | /* 40358*/ /*Scope*/ 56|128,8/*1080*/, /*->41440*/ |
| 20320 | /* 40360*/ OPC_CheckChild1Type, MVT::v8i16, |
| 20321 | /* 40362*/ OPC_Scope, 3|128,5/*643*/, /*->41008*/ // 2 children in Scope |
| 20322 | /* 40365*/ OPC_MoveChild2, |
| 20323 | /* 40366*/ OPC_SwitchOpcode /*3 cases */, 75|128,1/*203*/, TARGET_VAL(ISD::ADD),// ->40574 |
| 20324 | /* 40371*/ OPC_RecordChild0, // #2 = $addr |
| 20325 | /* 40372*/ OPC_RecordChild1, // #3 = $off |
| 20326 | /* 40373*/ OPC_MoveChild1, |
| 20327 | /* 40374*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 20328 | /* 40377*/ OPC_MoveParent, |
| 20329 | /* 40378*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 20330 | /* 40380*/ OPC_SwitchType /*2 cases */, 94, MVT::i32,// ->40477 |
| 20331 | /* 40383*/ OPC_MoveParent, |
| 20332 | /* 40384*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20333 | /* 40386*/ OPC_Scope, 19, /*->40407*/ // 2 children in Scope |
| 20334 | /* 40388*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20335 | /* 40390*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20336 | /* 40392*/ OPC_EmitMergeInputChains1_0, |
| 20337 | /* 40393*/ OPC_EmitInteger, MVT::i32, 0, |
| 20338 | /* 40396*/ OPC_EmitConvertToTarget, 3, |
| 20339 | /* 40398*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20340 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20341 | // Src: (st v8i16:{ *:[v8i16] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20342 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, v8i16:{ *:[v8i16] }:$val) |
| 20343 | /* 40407*/ /*Scope*/ 68, /*->40476*/ |
| 20344 | /* 40408*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20345 | /* 40410*/ OPC_CheckPredicate, 21, // Predicate_truncstorevi8 |
| 20346 | /* 40412*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20347 | /* 40414*/ OPC_EmitMergeInputChains1_0, |
| 20348 | /* 40415*/ OPC_EmitInteger, MVT::i32, 0, |
| 20349 | /* 40418*/ OPC_EmitConvertToTarget, 3, |
| 20350 | /* 40420*/ OPC_EmitInteger, MVT::i32, 127|128,1|128,124|128,7/*16711935*/, |
| 20351 | /* 40426*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20352 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 20353 | /* 40433*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20354 | MVT::v16i8, 1/*#Ops*/, 7, // Results = #8 |
| 20355 | /* 40440*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20356 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20357 | /* 40448*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I8x16), 0, |
| 20358 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20359 | /* 40456*/ OPC_EmitInteger, MVT::i32, 0, |
| 20360 | /* 40459*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20361 | MVT::i64, 2/*#Ops*/, 10, 11, // Results = #12 |
| 20362 | /* 40467*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20363 | 4/*#Ops*/, 4, 5, 2, 12, |
| 20364 | // Src: (st v8i16:{ *:[v8i16] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi8>> - Complexity = 11 |
| 20365 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, ?:{ *:[i32] }:$addr, (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I8x16:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 16711935:{ *:[i32] })), ?:{ *:[v8i16] }:$val), ?:{ *:[v8i16] }:$val), 0:{ *:[i32] })) |
| 20366 | /* 40476*/ 0, /*End of Scope*/ |
| 20367 | /* 40477*/ /*SwitchType*/ 94, MVT::i64,// ->40573 |
| 20368 | /* 40479*/ OPC_MoveParent, |
| 20369 | /* 40480*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20370 | /* 40482*/ OPC_Scope, 19, /*->40503*/ // 2 children in Scope |
| 20371 | /* 40484*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20372 | /* 40486*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20373 | /* 40488*/ OPC_EmitMergeInputChains1_0, |
| 20374 | /* 40489*/ OPC_EmitInteger, MVT::i32, 0, |
| 20375 | /* 40492*/ OPC_EmitConvertToTarget, 3, |
| 20376 | /* 40494*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20377 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20378 | // Src: (st v8i16:{ *:[v8i16] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20379 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, v8i16:{ *:[v8i16] }:$val) |
| 20380 | /* 40503*/ /*Scope*/ 68, /*->40572*/ |
| 20381 | /* 40504*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20382 | /* 40506*/ OPC_CheckPredicate, 21, // Predicate_truncstorevi8 |
| 20383 | /* 40508*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20384 | /* 40510*/ OPC_EmitMergeInputChains1_0, |
| 20385 | /* 40511*/ OPC_EmitInteger, MVT::i32, 0, |
| 20386 | /* 40514*/ OPC_EmitConvertToTarget, 3, |
| 20387 | /* 40516*/ OPC_EmitInteger, MVT::i32, 127|128,1|128,124|128,7/*16711935*/, |
| 20388 | /* 40522*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20389 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 20390 | /* 40529*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20391 | MVT::v16i8, 1/*#Ops*/, 7, // Results = #8 |
| 20392 | /* 40536*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20393 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20394 | /* 40544*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I8x16), 0, |
| 20395 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20396 | /* 40552*/ OPC_EmitInteger, MVT::i32, 0, |
| 20397 | /* 40555*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20398 | MVT::i64, 2/*#Ops*/, 10, 11, // Results = #12 |
| 20399 | /* 40563*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20400 | 4/*#Ops*/, 4, 5, 2, 12, |
| 20401 | // Src: (st v8i16:{ *:[v8i16] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi8>> - Complexity = 11 |
| 20402 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, ?:{ *:[i64] }:$addr, (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I8x16:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 16711935:{ *:[i32] })), ?:{ *:[v8i16] }:$val), ?:{ *:[v8i16] }:$val), 0:{ *:[i32] })) |
| 20403 | /* 40572*/ 0, /*End of Scope*/ |
| 20404 | /* 40573*/ 0, // EndSwitchType |
| 20405 | /* 40574*/ /*SwitchOpcode*/ 75|128,1/*203*/, TARGET_VAL(ISD::OR),// ->40781 |
| 20406 | /* 40578*/ OPC_RecordChild0, // #2 = $addr |
| 20407 | /* 40579*/ OPC_RecordChild1, // #3 = $off |
| 20408 | /* 40580*/ OPC_MoveChild1, |
| 20409 | /* 40581*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 20410 | /* 40584*/ OPC_MoveParent, |
| 20411 | /* 40585*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 20412 | /* 40587*/ OPC_SwitchType /*2 cases */, 94, MVT::i32,// ->40684 |
| 20413 | /* 40590*/ OPC_MoveParent, |
| 20414 | /* 40591*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20415 | /* 40593*/ OPC_Scope, 19, /*->40614*/ // 2 children in Scope |
| 20416 | /* 40595*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20417 | /* 40597*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20418 | /* 40599*/ OPC_EmitMergeInputChains1_0, |
| 20419 | /* 40600*/ OPC_EmitInteger, MVT::i32, 0, |
| 20420 | /* 40603*/ OPC_EmitConvertToTarget, 3, |
| 20421 | /* 40605*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20422 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20423 | // Src: (st v8i16:{ *:[v8i16] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20424 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, v8i16:{ *:[v8i16] }:$val) |
| 20425 | /* 40614*/ /*Scope*/ 68, /*->40683*/ |
| 20426 | /* 40615*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20427 | /* 40617*/ OPC_CheckPredicate, 21, // Predicate_truncstorevi8 |
| 20428 | /* 40619*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20429 | /* 40621*/ OPC_EmitMergeInputChains1_0, |
| 20430 | /* 40622*/ OPC_EmitInteger, MVT::i32, 0, |
| 20431 | /* 40625*/ OPC_EmitConvertToTarget, 3, |
| 20432 | /* 40627*/ OPC_EmitInteger, MVT::i32, 127|128,1|128,124|128,7/*16711935*/, |
| 20433 | /* 40633*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20434 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 20435 | /* 40640*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20436 | MVT::v16i8, 1/*#Ops*/, 7, // Results = #8 |
| 20437 | /* 40647*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20438 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20439 | /* 40655*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I8x16), 0, |
| 20440 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20441 | /* 40663*/ OPC_EmitInteger, MVT::i32, 0, |
| 20442 | /* 40666*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20443 | MVT::i64, 2/*#Ops*/, 10, 11, // Results = #12 |
| 20444 | /* 40674*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20445 | 4/*#Ops*/, 4, 5, 2, 12, |
| 20446 | // Src: (st v8i16:{ *:[v8i16] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi8>> - Complexity = 11 |
| 20447 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, ?:{ *:[i32] }:$addr, (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I8x16:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 16711935:{ *:[i32] })), ?:{ *:[v8i16] }:$val), ?:{ *:[v8i16] }:$val), 0:{ *:[i32] })) |
| 20448 | /* 40683*/ 0, /*End of Scope*/ |
| 20449 | /* 40684*/ /*SwitchType*/ 94, MVT::i64,// ->40780 |
| 20450 | /* 40686*/ OPC_MoveParent, |
| 20451 | /* 40687*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20452 | /* 40689*/ OPC_Scope, 19, /*->40710*/ // 2 children in Scope |
| 20453 | /* 40691*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20454 | /* 40693*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20455 | /* 40695*/ OPC_EmitMergeInputChains1_0, |
| 20456 | /* 40696*/ OPC_EmitInteger, MVT::i32, 0, |
| 20457 | /* 40699*/ OPC_EmitConvertToTarget, 3, |
| 20458 | /* 40701*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20459 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20460 | // Src: (st v8i16:{ *:[v8i16] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20461 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, v8i16:{ *:[v8i16] }:$val) |
| 20462 | /* 40710*/ /*Scope*/ 68, /*->40779*/ |
| 20463 | /* 40711*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20464 | /* 40713*/ OPC_CheckPredicate, 21, // Predicate_truncstorevi8 |
| 20465 | /* 40715*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20466 | /* 40717*/ OPC_EmitMergeInputChains1_0, |
| 20467 | /* 40718*/ OPC_EmitInteger, MVT::i32, 0, |
| 20468 | /* 40721*/ OPC_EmitConvertToTarget, 3, |
| 20469 | /* 40723*/ OPC_EmitInteger, MVT::i32, 127|128,1|128,124|128,7/*16711935*/, |
| 20470 | /* 40729*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20471 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 20472 | /* 40736*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20473 | MVT::v16i8, 1/*#Ops*/, 7, // Results = #8 |
| 20474 | /* 40743*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20475 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20476 | /* 40751*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I8x16), 0, |
| 20477 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20478 | /* 40759*/ OPC_EmitInteger, MVT::i32, 0, |
| 20479 | /* 40762*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20480 | MVT::i64, 2/*#Ops*/, 10, 11, // Results = #12 |
| 20481 | /* 40770*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20482 | 4/*#Ops*/, 4, 5, 2, 12, |
| 20483 | // Src: (st v8i16:{ *:[v8i16] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi8>> - Complexity = 11 |
| 20484 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, ?:{ *:[i64] }:$addr, (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I8x16:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 16711935:{ *:[i32] })), ?:{ *:[v8i16] }:$val), ?:{ *:[v8i16] }:$val), 0:{ *:[i32] })) |
| 20485 | /* 40779*/ 0, /*End of Scope*/ |
| 20486 | /* 40780*/ 0, // EndSwitchType |
| 20487 | /* 40781*/ /*SwitchOpcode*/ 94|128,1/*222*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->41007 |
| 20488 | /* 40785*/ OPC_RecordChild0, // #2 = $off |
| 20489 | /* 40786*/ OPC_MoveChild0, |
| 20490 | /* 40787*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 20491 | /* 40790*/ OPC_MoveParent, |
| 20492 | /* 40791*/ OPC_MoveParent, |
| 20493 | /* 40792*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20494 | /* 40794*/ OPC_Scope, 56, /*->40852*/ // 2 children in Scope |
| 20495 | /* 40796*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20496 | /* 40798*/ OPC_Scope, 25, /*->40825*/ // 2 children in Scope |
| 20497 | /* 40800*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 20498 | /* 40802*/ OPC_EmitMergeInputChains1_0, |
| 20499 | /* 40803*/ OPC_EmitInteger, MVT::i32, 0, |
| 20500 | /* 40806*/ OPC_EmitInteger, MVT::i32, 0, |
| 20501 | /* 40809*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20502 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 20503 | /* 40816*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20504 | 4/*#Ops*/, 3, 2, 5, 1, |
| 20505 | // Src: (st v8i16:{ *:[v8i16] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 20506 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), v8i16:{ *:[v8i16] }:$val) |
| 20507 | /* 40825*/ /*Scope*/ 25, /*->40851*/ |
| 20508 | /* 40826*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 20509 | /* 40828*/ OPC_EmitMergeInputChains1_0, |
| 20510 | /* 40829*/ OPC_EmitInteger, MVT::i32, 0, |
| 20511 | /* 40832*/ OPC_EmitInteger, MVT::i64, 0, |
| 20512 | /* 40835*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 20513 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 20514 | /* 40842*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20515 | 4/*#Ops*/, 3, 2, 5, 1, |
| 20516 | // Src: (st v8i16:{ *:[v8i16] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 20517 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), v8i16:{ *:[v8i16] }:$val) |
| 20518 | /* 40851*/ 0, /*End of Scope*/ |
| 20519 | /* 40852*/ /*Scope*/ 24|128,1/*152*/, /*->41006*/ |
| 20520 | /* 40854*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20521 | /* 40856*/ OPC_CheckPredicate, 21, // Predicate_truncstorevi8 |
| 20522 | /* 40858*/ OPC_Scope, 72, /*->40932*/ // 2 children in Scope |
| 20523 | /* 40860*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 20524 | /* 40862*/ OPC_EmitMergeInputChains1_0, |
| 20525 | /* 40863*/ OPC_EmitInteger, MVT::i32, 0, |
| 20526 | /* 40866*/ OPC_EmitInteger, MVT::i32, 0, |
| 20527 | /* 40869*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20528 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 20529 | /* 40876*/ OPC_EmitInteger, MVT::i32, 127|128,1|128,124|128,7/*16711935*/, |
| 20530 | /* 40882*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20531 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 20532 | /* 40889*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20533 | MVT::v16i8, 1/*#Ops*/, 7, // Results = #8 |
| 20534 | /* 40896*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20535 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20536 | /* 40904*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I8x16), 0, |
| 20537 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20538 | /* 40912*/ OPC_EmitInteger, MVT::i32, 0, |
| 20539 | /* 40915*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20540 | MVT::i64, 2/*#Ops*/, 10, 11, // Results = #12 |
| 20541 | /* 40923*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20542 | 4/*#Ops*/, 3, 2, 5, 12, |
| 20543 | // Src: (st v8i16:{ *:[v8i16] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi8>> - Complexity = 10 |
| 20544 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I8x16:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 16711935:{ *:[i32] })), ?:{ *:[v8i16] }:$val), ?:{ *:[v8i16] }:$val), 0:{ *:[i32] })) |
| 20545 | /* 40932*/ /*Scope*/ 72, /*->41005*/ |
| 20546 | /* 40933*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 20547 | /* 40935*/ OPC_EmitMergeInputChains1_0, |
| 20548 | /* 40936*/ OPC_EmitInteger, MVT::i32, 0, |
| 20549 | /* 40939*/ OPC_EmitInteger, MVT::i64, 0, |
| 20550 | /* 40942*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 20551 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 20552 | /* 40949*/ OPC_EmitInteger, MVT::i32, 127|128,1|128,124|128,7/*16711935*/, |
| 20553 | /* 40955*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20554 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 20555 | /* 40962*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20556 | MVT::v16i8, 1/*#Ops*/, 7, // Results = #8 |
| 20557 | /* 40969*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20558 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20559 | /* 40977*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I8x16), 0, |
| 20560 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20561 | /* 40985*/ OPC_EmitInteger, MVT::i32, 0, |
| 20562 | /* 40988*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20563 | MVT::i64, 2/*#Ops*/, 10, 11, // Results = #12 |
| 20564 | /* 40996*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20565 | 4/*#Ops*/, 3, 2, 5, 12, |
| 20566 | // Src: (st v8i16:{ *:[v8i16] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi8>> - Complexity = 10 |
| 20567 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I8x16:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 16711935:{ *:[i32] })), ?:{ *:[v8i16] }:$val), ?:{ *:[v8i16] }:$val), 0:{ *:[i32] })) |
| 20568 | /* 41005*/ 0, /*End of Scope*/ |
| 20569 | /* 41006*/ 0, /*End of Scope*/ |
| 20570 | /* 41007*/ 0, // EndSwitchOpcode |
| 20571 | /* 41008*/ /*Scope*/ 45|128,3/*429*/, /*->41439*/ |
| 20572 | /* 41010*/ OPC_RecordChild2, // #2 = $off |
| 20573 | /* 41011*/ OPC_Scope, 100|128,1/*228*/, /*->41242*/ // 3 children in Scope |
| 20574 | /* 41014*/ OPC_MoveChild2, |
| 20575 | /* 41015*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 20576 | /* 41018*/ OPC_MoveParent, |
| 20577 | /* 41019*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20578 | /* 41021*/ OPC_Scope, 60, /*->41083*/ // 2 children in Scope |
| 20579 | /* 41023*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20580 | /* 41025*/ OPC_Scope, 27, /*->41054*/ // 2 children in Scope |
| 20581 | /* 41027*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20582 | /* 41029*/ OPC_EmitMergeInputChains1_0, |
| 20583 | /* 41030*/ OPC_EmitInteger, MVT::i32, 0, |
| 20584 | /* 41033*/ OPC_EmitConvertToTarget, 2, |
| 20585 | /* 41035*/ OPC_EmitInteger, MVT::i32, 0, |
| 20586 | /* 41038*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20587 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 20588 | /* 41045*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20589 | 4/*#Ops*/, 3, 4, 6, 1, |
| 20590 | // Src: (st v8i16:{ *:[v8i16] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 20591 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), v8i16:{ *:[v8i16] }:$val) |
| 20592 | /* 41054*/ /*Scope*/ 27, /*->41082*/ |
| 20593 | /* 41055*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20594 | /* 41057*/ OPC_EmitMergeInputChains1_0, |
| 20595 | /* 41058*/ OPC_EmitInteger, MVT::i32, 0, |
| 20596 | /* 41061*/ OPC_EmitConvertToTarget, 2, |
| 20597 | /* 41063*/ OPC_EmitInteger, MVT::i64, 0, |
| 20598 | /* 41066*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 20599 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 20600 | /* 41073*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20601 | 4/*#Ops*/, 3, 4, 6, 1, |
| 20602 | // Src: (st v8i16:{ *:[v8i16] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 20603 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), v8i16:{ *:[v8i16] }:$val) |
| 20604 | /* 41082*/ 0, /*End of Scope*/ |
| 20605 | /* 41083*/ /*Scope*/ 28|128,1/*156*/, /*->41241*/ |
| 20606 | /* 41085*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20607 | /* 41087*/ OPC_CheckPredicate, 21, // Predicate_truncstorevi8 |
| 20608 | /* 41089*/ OPC_Scope, 74, /*->41165*/ // 2 children in Scope |
| 20609 | /* 41091*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20610 | /* 41093*/ OPC_EmitMergeInputChains1_0, |
| 20611 | /* 41094*/ OPC_EmitInteger, MVT::i32, 0, |
| 20612 | /* 41097*/ OPC_EmitConvertToTarget, 2, |
| 20613 | /* 41099*/ OPC_EmitInteger, MVT::i32, 0, |
| 20614 | /* 41102*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20615 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 20616 | /* 41109*/ OPC_EmitInteger, MVT::i32, 127|128,1|128,124|128,7/*16711935*/, |
| 20617 | /* 41115*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20618 | MVT::i32, 1/*#Ops*/, 7, // Results = #8 |
| 20619 | /* 41122*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20620 | MVT::v16i8, 1/*#Ops*/, 8, // Results = #9 |
| 20621 | /* 41129*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20622 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20623 | /* 41137*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I8x16), 0, |
| 20624 | MVT::v16i8, 2/*#Ops*/, 10, 1, // Results = #11 |
| 20625 | /* 41145*/ OPC_EmitInteger, MVT::i32, 0, |
| 20626 | /* 41148*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20627 | MVT::i64, 2/*#Ops*/, 11, 12, // Results = #13 |
| 20628 | /* 41156*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20629 | 4/*#Ops*/, 3, 4, 6, 13, |
| 20630 | // Src: (st v8i16:{ *:[v8i16] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi8>> - Complexity = 7 |
| 20631 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I8x16:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 16711935:{ *:[i32] })), ?:{ *:[v8i16] }:$val), ?:{ *:[v8i16] }:$val), 0:{ *:[i32] })) |
| 20632 | /* 41165*/ /*Scope*/ 74, /*->41240*/ |
| 20633 | /* 41166*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20634 | /* 41168*/ OPC_EmitMergeInputChains1_0, |
| 20635 | /* 41169*/ OPC_EmitInteger, MVT::i32, 0, |
| 20636 | /* 41172*/ OPC_EmitConvertToTarget, 2, |
| 20637 | /* 41174*/ OPC_EmitInteger, MVT::i64, 0, |
| 20638 | /* 41177*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 20639 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 20640 | /* 41184*/ OPC_EmitInteger, MVT::i32, 127|128,1|128,124|128,7/*16711935*/, |
| 20641 | /* 41190*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20642 | MVT::i32, 1/*#Ops*/, 7, // Results = #8 |
| 20643 | /* 41197*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20644 | MVT::v16i8, 1/*#Ops*/, 8, // Results = #9 |
| 20645 | /* 41204*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20646 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20647 | /* 41212*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I8x16), 0, |
| 20648 | MVT::v16i8, 2/*#Ops*/, 10, 1, // Results = #11 |
| 20649 | /* 41220*/ OPC_EmitInteger, MVT::i32, 0, |
| 20650 | /* 41223*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20651 | MVT::i64, 2/*#Ops*/, 11, 12, // Results = #13 |
| 20652 | /* 41231*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20653 | 4/*#Ops*/, 3, 4, 6, 13, |
| 20654 | // Src: (st v8i16:{ *:[v8i16] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi8>> - Complexity = 7 |
| 20655 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I8x16:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 16711935:{ *:[i32] })), ?:{ *:[v8i16] }:$val), ?:{ *:[v8i16] }:$val), 0:{ *:[i32] })) |
| 20656 | /* 41240*/ 0, /*End of Scope*/ |
| 20657 | /* 41241*/ 0, /*End of Scope*/ |
| 20658 | /* 41242*/ /*Scope*/ 97, /*->41340*/ |
| 20659 | /* 41243*/ OPC_CheckChild2Type, MVT::i32, |
| 20660 | /* 41245*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20661 | /* 41247*/ OPC_Scope, 20, /*->41269*/ // 2 children in Scope |
| 20662 | /* 41249*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20663 | /* 41251*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20664 | /* 41253*/ OPC_EmitMergeInputChains1_0, |
| 20665 | /* 41254*/ OPC_EmitInteger, MVT::i32, 0, |
| 20666 | /* 41257*/ OPC_EmitInteger, MVT::i32, 0, |
| 20667 | /* 41260*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20668 | 4/*#Ops*/, 3, 4, 2, 1, |
| 20669 | // Src: (st v8i16:{ *:[v8i16] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 20670 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, v8i16:{ *:[v8i16] }:$val) |
| 20671 | /* 41269*/ /*Scope*/ 69, /*->41339*/ |
| 20672 | /* 41270*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20673 | /* 41272*/ OPC_CheckPredicate, 21, // Predicate_truncstorevi8 |
| 20674 | /* 41274*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20675 | /* 41276*/ OPC_EmitMergeInputChains1_0, |
| 20676 | /* 41277*/ OPC_EmitInteger, MVT::i32, 0, |
| 20677 | /* 41280*/ OPC_EmitInteger, MVT::i32, 0, |
| 20678 | /* 41283*/ OPC_EmitInteger, MVT::i32, 127|128,1|128,124|128,7/*16711935*/, |
| 20679 | /* 41289*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20680 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 20681 | /* 41296*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20682 | MVT::v16i8, 1/*#Ops*/, 6, // Results = #7 |
| 20683 | /* 41303*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20684 | MVT::v16i8, 2/*#Ops*/, 7, 1, // Results = #8 |
| 20685 | /* 41311*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I8x16), 0, |
| 20686 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20687 | /* 41319*/ OPC_EmitInteger, MVT::i32, 0, |
| 20688 | /* 41322*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20689 | MVT::i64, 2/*#Ops*/, 9, 10, // Results = #11 |
| 20690 | /* 41330*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20691 | 4/*#Ops*/, 3, 4, 2, 11, |
| 20692 | // Src: (st v8i16:{ *:[v8i16] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi8>> - Complexity = 4 |
| 20693 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, 0:{ *:[i32] }, ?:{ *:[i32] }:$addr, (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I8x16:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 16711935:{ *:[i32] })), ?:{ *:[v8i16] }:$val), ?:{ *:[v8i16] }:$val), 0:{ *:[i32] })) |
| 20694 | /* 41339*/ 0, /*End of Scope*/ |
| 20695 | /* 41340*/ /*Scope*/ 97, /*->41438*/ |
| 20696 | /* 41341*/ OPC_CheckChild2Type, MVT::i64, |
| 20697 | /* 41343*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20698 | /* 41345*/ OPC_Scope, 20, /*->41367*/ // 2 children in Scope |
| 20699 | /* 41347*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20700 | /* 41349*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20701 | /* 41351*/ OPC_EmitMergeInputChains1_0, |
| 20702 | /* 41352*/ OPC_EmitInteger, MVT::i32, 0, |
| 20703 | /* 41355*/ OPC_EmitInteger, MVT::i64, 0, |
| 20704 | /* 41358*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20705 | 4/*#Ops*/, 3, 4, 2, 1, |
| 20706 | // Src: (st v8i16:{ *:[v8i16] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 20707 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, v8i16:{ *:[v8i16] }:$val) |
| 20708 | /* 41367*/ /*Scope*/ 69, /*->41437*/ |
| 20709 | /* 41368*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20710 | /* 41370*/ OPC_CheckPredicate, 21, // Predicate_truncstorevi8 |
| 20711 | /* 41372*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20712 | /* 41374*/ OPC_EmitMergeInputChains1_0, |
| 20713 | /* 41375*/ OPC_EmitInteger, MVT::i32, 0, |
| 20714 | /* 41378*/ OPC_EmitInteger, MVT::i64, 0, |
| 20715 | /* 41381*/ OPC_EmitInteger, MVT::i32, 127|128,1|128,124|128,7/*16711935*/, |
| 20716 | /* 41387*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20717 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 20718 | /* 41394*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20719 | MVT::v16i8, 1/*#Ops*/, 6, // Results = #7 |
| 20720 | /* 41401*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20721 | MVT::v16i8, 2/*#Ops*/, 7, 1, // Results = #8 |
| 20722 | /* 41409*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I8x16), 0, |
| 20723 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20724 | /* 41417*/ OPC_EmitInteger, MVT::i32, 0, |
| 20725 | /* 41420*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20726 | MVT::i64, 2/*#Ops*/, 9, 10, // Results = #11 |
| 20727 | /* 41428*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20728 | 4/*#Ops*/, 3, 4, 2, 11, |
| 20729 | // Src: (st v8i16:{ *:[v8i16] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi8>> - Complexity = 4 |
| 20730 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, 0:{ *:[i64] }, ?:{ *:[i64] }:$addr, (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I8x16:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 16711935:{ *:[i32] })), ?:{ *:[v8i16] }:$val), ?:{ *:[v8i16] }:$val), 0:{ *:[i32] })) |
| 20731 | /* 41437*/ 0, /*End of Scope*/ |
| 20732 | /* 41438*/ 0, /*End of Scope*/ |
| 20733 | /* 41439*/ 0, /*End of Scope*/ |
| 20734 | /* 41440*/ /*Scope*/ 46|128,8/*1070*/, /*->42512*/ |
| 20735 | /* 41442*/ OPC_CheckChild1Type, MVT::v4i32, |
| 20736 | /* 41444*/ OPC_Scope, 125|128,4/*637*/, /*->42084*/ // 2 children in Scope |
| 20737 | /* 41447*/ OPC_MoveChild2, |
| 20738 | /* 41448*/ OPC_SwitchOpcode /*3 cases */, 73|128,1/*201*/, TARGET_VAL(ISD::ADD),// ->41654 |
| 20739 | /* 41453*/ OPC_RecordChild0, // #2 = $addr |
| 20740 | /* 41454*/ OPC_RecordChild1, // #3 = $off |
| 20741 | /* 41455*/ OPC_MoveChild1, |
| 20742 | /* 41456*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 20743 | /* 41459*/ OPC_MoveParent, |
| 20744 | /* 41460*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 20745 | /* 41462*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->41558 |
| 20746 | /* 41465*/ OPC_MoveParent, |
| 20747 | /* 41466*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20748 | /* 41468*/ OPC_Scope, 19, /*->41489*/ // 2 children in Scope |
| 20749 | /* 41470*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20750 | /* 41472*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20751 | /* 41474*/ OPC_EmitMergeInputChains1_0, |
| 20752 | /* 41475*/ OPC_EmitInteger, MVT::i32, 0, |
| 20753 | /* 41478*/ OPC_EmitConvertToTarget, 3, |
| 20754 | /* 41480*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20755 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20756 | // Src: (st v4i32:{ *:[v4i32] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20757 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, v4i32:{ *:[v4i32] }:$val) |
| 20758 | /* 41489*/ /*Scope*/ 67, /*->41557*/ |
| 20759 | /* 41490*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20760 | /* 41492*/ OPC_CheckPredicate, 22, // Predicate_truncstorevi16 |
| 20761 | /* 41494*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20762 | /* 41496*/ OPC_EmitMergeInputChains1_0, |
| 20763 | /* 41497*/ OPC_EmitInteger, MVT::i32, 0, |
| 20764 | /* 41500*/ OPC_EmitConvertToTarget, 3, |
| 20765 | /* 41502*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,3/*65535*/, |
| 20766 | /* 41507*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20767 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 20768 | /* 41514*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20769 | MVT::v16i8, 1/*#Ops*/, 7, // Results = #8 |
| 20770 | /* 41521*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20771 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20772 | /* 41529*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I16x8), 0, |
| 20773 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20774 | /* 41537*/ OPC_EmitInteger, MVT::i32, 0, |
| 20775 | /* 41540*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20776 | MVT::i64, 2/*#Ops*/, 10, 11, // Results = #12 |
| 20777 | /* 41548*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20778 | 4/*#Ops*/, 4, 5, 2, 12, |
| 20779 | // Src: (st v4i32:{ *:[v4i32] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi16>> - Complexity = 11 |
| 20780 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, ?:{ *:[i32] }:$addr, (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I16x8:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 65535:{ *:[i32] })), ?:{ *:[v4i32] }:$val), ?:{ *:[v4i32] }:$val), 0:{ *:[i32] })) |
| 20781 | /* 41557*/ 0, /*End of Scope*/ |
| 20782 | /* 41558*/ /*SwitchType*/ 93, MVT::i64,// ->41653 |
| 20783 | /* 41560*/ OPC_MoveParent, |
| 20784 | /* 41561*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20785 | /* 41563*/ OPC_Scope, 19, /*->41584*/ // 2 children in Scope |
| 20786 | /* 41565*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20787 | /* 41567*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20788 | /* 41569*/ OPC_EmitMergeInputChains1_0, |
| 20789 | /* 41570*/ OPC_EmitInteger, MVT::i32, 0, |
| 20790 | /* 41573*/ OPC_EmitConvertToTarget, 3, |
| 20791 | /* 41575*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20792 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20793 | // Src: (st v4i32:{ *:[v4i32] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20794 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, v4i32:{ *:[v4i32] }:$val) |
| 20795 | /* 41584*/ /*Scope*/ 67, /*->41652*/ |
| 20796 | /* 41585*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20797 | /* 41587*/ OPC_CheckPredicate, 22, // Predicate_truncstorevi16 |
| 20798 | /* 41589*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20799 | /* 41591*/ OPC_EmitMergeInputChains1_0, |
| 20800 | /* 41592*/ OPC_EmitInteger, MVT::i32, 0, |
| 20801 | /* 41595*/ OPC_EmitConvertToTarget, 3, |
| 20802 | /* 41597*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,3/*65535*/, |
| 20803 | /* 41602*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20804 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 20805 | /* 41609*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20806 | MVT::v16i8, 1/*#Ops*/, 7, // Results = #8 |
| 20807 | /* 41616*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20808 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20809 | /* 41624*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I16x8), 0, |
| 20810 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20811 | /* 41632*/ OPC_EmitInteger, MVT::i32, 0, |
| 20812 | /* 41635*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20813 | MVT::i64, 2/*#Ops*/, 10, 11, // Results = #12 |
| 20814 | /* 41643*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20815 | 4/*#Ops*/, 4, 5, 2, 12, |
| 20816 | // Src: (st v4i32:{ *:[v4i32] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi16>> - Complexity = 11 |
| 20817 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, ?:{ *:[i64] }:$addr, (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I16x8:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 65535:{ *:[i32] })), ?:{ *:[v4i32] }:$val), ?:{ *:[v4i32] }:$val), 0:{ *:[i32] })) |
| 20818 | /* 41652*/ 0, /*End of Scope*/ |
| 20819 | /* 41653*/ 0, // EndSwitchType |
| 20820 | /* 41654*/ /*SwitchOpcode*/ 73|128,1/*201*/, TARGET_VAL(ISD::OR),// ->41859 |
| 20821 | /* 41658*/ OPC_RecordChild0, // #2 = $addr |
| 20822 | /* 41659*/ OPC_RecordChild1, // #3 = $off |
| 20823 | /* 41660*/ OPC_MoveChild1, |
| 20824 | /* 41661*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 20825 | /* 41664*/ OPC_MoveParent, |
| 20826 | /* 41665*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 20827 | /* 41667*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->41763 |
| 20828 | /* 41670*/ OPC_MoveParent, |
| 20829 | /* 41671*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20830 | /* 41673*/ OPC_Scope, 19, /*->41694*/ // 2 children in Scope |
| 20831 | /* 41675*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20832 | /* 41677*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20833 | /* 41679*/ OPC_EmitMergeInputChains1_0, |
| 20834 | /* 41680*/ OPC_EmitInteger, MVT::i32, 0, |
| 20835 | /* 41683*/ OPC_EmitConvertToTarget, 3, |
| 20836 | /* 41685*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20837 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20838 | // Src: (st v4i32:{ *:[v4i32] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20839 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, v4i32:{ *:[v4i32] }:$val) |
| 20840 | /* 41694*/ /*Scope*/ 67, /*->41762*/ |
| 20841 | /* 41695*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20842 | /* 41697*/ OPC_CheckPredicate, 22, // Predicate_truncstorevi16 |
| 20843 | /* 41699*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20844 | /* 41701*/ OPC_EmitMergeInputChains1_0, |
| 20845 | /* 41702*/ OPC_EmitInteger, MVT::i32, 0, |
| 20846 | /* 41705*/ OPC_EmitConvertToTarget, 3, |
| 20847 | /* 41707*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,3/*65535*/, |
| 20848 | /* 41712*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20849 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 20850 | /* 41719*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20851 | MVT::v16i8, 1/*#Ops*/, 7, // Results = #8 |
| 20852 | /* 41726*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20853 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20854 | /* 41734*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I16x8), 0, |
| 20855 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20856 | /* 41742*/ OPC_EmitInteger, MVT::i32, 0, |
| 20857 | /* 41745*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20858 | MVT::i64, 2/*#Ops*/, 10, 11, // Results = #12 |
| 20859 | /* 41753*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20860 | 4/*#Ops*/, 4, 5, 2, 12, |
| 20861 | // Src: (st v4i32:{ *:[v4i32] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi16>> - Complexity = 11 |
| 20862 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, ?:{ *:[i32] }:$addr, (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I16x8:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 65535:{ *:[i32] })), ?:{ *:[v4i32] }:$val), ?:{ *:[v4i32] }:$val), 0:{ *:[i32] })) |
| 20863 | /* 41762*/ 0, /*End of Scope*/ |
| 20864 | /* 41763*/ /*SwitchType*/ 93, MVT::i64,// ->41858 |
| 20865 | /* 41765*/ OPC_MoveParent, |
| 20866 | /* 41766*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20867 | /* 41768*/ OPC_Scope, 19, /*->41789*/ // 2 children in Scope |
| 20868 | /* 41770*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20869 | /* 41772*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20870 | /* 41774*/ OPC_EmitMergeInputChains1_0, |
| 20871 | /* 41775*/ OPC_EmitInteger, MVT::i32, 0, |
| 20872 | /* 41778*/ OPC_EmitConvertToTarget, 3, |
| 20873 | /* 41780*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20874 | 4/*#Ops*/, 4, 5, 2, 1, |
| 20875 | // Src: (st v4i32:{ *:[v4i32] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 20876 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, v4i32:{ *:[v4i32] }:$val) |
| 20877 | /* 41789*/ /*Scope*/ 67, /*->41857*/ |
| 20878 | /* 41790*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20879 | /* 41792*/ OPC_CheckPredicate, 22, // Predicate_truncstorevi16 |
| 20880 | /* 41794*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 20881 | /* 41796*/ OPC_EmitMergeInputChains1_0, |
| 20882 | /* 41797*/ OPC_EmitInteger, MVT::i32, 0, |
| 20883 | /* 41800*/ OPC_EmitConvertToTarget, 3, |
| 20884 | /* 41802*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,3/*65535*/, |
| 20885 | /* 41807*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20886 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 20887 | /* 41814*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20888 | MVT::v16i8, 1/*#Ops*/, 7, // Results = #8 |
| 20889 | /* 41821*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20890 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20891 | /* 41829*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I16x8), 0, |
| 20892 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20893 | /* 41837*/ OPC_EmitInteger, MVT::i32, 0, |
| 20894 | /* 41840*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20895 | MVT::i64, 2/*#Ops*/, 10, 11, // Results = #12 |
| 20896 | /* 41848*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20897 | 4/*#Ops*/, 4, 5, 2, 12, |
| 20898 | // Src: (st v4i32:{ *:[v4i32] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi16>> - Complexity = 11 |
| 20899 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, ?:{ *:[i64] }:$addr, (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I16x8:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 65535:{ *:[i32] })), ?:{ *:[v4i32] }:$val), ?:{ *:[v4i32] }:$val), 0:{ *:[i32] })) |
| 20900 | /* 41857*/ 0, /*End of Scope*/ |
| 20901 | /* 41858*/ 0, // EndSwitchType |
| 20902 | /* 41859*/ /*SwitchOpcode*/ 92|128,1/*220*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->42083 |
| 20903 | /* 41863*/ OPC_RecordChild0, // #2 = $off |
| 20904 | /* 41864*/ OPC_MoveChild0, |
| 20905 | /* 41865*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 20906 | /* 41868*/ OPC_MoveParent, |
| 20907 | /* 41869*/ OPC_MoveParent, |
| 20908 | /* 41870*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20909 | /* 41872*/ OPC_Scope, 56, /*->41930*/ // 2 children in Scope |
| 20910 | /* 41874*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20911 | /* 41876*/ OPC_Scope, 25, /*->41903*/ // 2 children in Scope |
| 20912 | /* 41878*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 20913 | /* 41880*/ OPC_EmitMergeInputChains1_0, |
| 20914 | /* 41881*/ OPC_EmitInteger, MVT::i32, 0, |
| 20915 | /* 41884*/ OPC_EmitInteger, MVT::i32, 0, |
| 20916 | /* 41887*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20917 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 20918 | /* 41894*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20919 | 4/*#Ops*/, 3, 2, 5, 1, |
| 20920 | // Src: (st v4i32:{ *:[v4i32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 20921 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), v4i32:{ *:[v4i32] }:$val) |
| 20922 | /* 41903*/ /*Scope*/ 25, /*->41929*/ |
| 20923 | /* 41904*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 20924 | /* 41906*/ OPC_EmitMergeInputChains1_0, |
| 20925 | /* 41907*/ OPC_EmitInteger, MVT::i32, 0, |
| 20926 | /* 41910*/ OPC_EmitInteger, MVT::i64, 0, |
| 20927 | /* 41913*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 20928 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 20929 | /* 41920*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20930 | 4/*#Ops*/, 3, 2, 5, 1, |
| 20931 | // Src: (st v4i32:{ *:[v4i32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 20932 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), v4i32:{ *:[v4i32] }:$val) |
| 20933 | /* 41929*/ 0, /*End of Scope*/ |
| 20934 | /* 41930*/ /*Scope*/ 22|128,1/*150*/, /*->42082*/ |
| 20935 | /* 41932*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 20936 | /* 41934*/ OPC_CheckPredicate, 22, // Predicate_truncstorevi16 |
| 20937 | /* 41936*/ OPC_Scope, 71, /*->42009*/ // 2 children in Scope |
| 20938 | /* 41938*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 20939 | /* 41940*/ OPC_EmitMergeInputChains1_0, |
| 20940 | /* 41941*/ OPC_EmitInteger, MVT::i32, 0, |
| 20941 | /* 41944*/ OPC_EmitInteger, MVT::i32, 0, |
| 20942 | /* 41947*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20943 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 20944 | /* 41954*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,3/*65535*/, |
| 20945 | /* 41959*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20946 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 20947 | /* 41966*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20948 | MVT::v16i8, 1/*#Ops*/, 7, // Results = #8 |
| 20949 | /* 41973*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20950 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20951 | /* 41981*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I16x8), 0, |
| 20952 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20953 | /* 41989*/ OPC_EmitInteger, MVT::i32, 0, |
| 20954 | /* 41992*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20955 | MVT::i64, 2/*#Ops*/, 10, 11, // Results = #12 |
| 20956 | /* 42000*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 20957 | 4/*#Ops*/, 3, 2, 5, 12, |
| 20958 | // Src: (st v4i32:{ *:[v4i32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi16>> - Complexity = 10 |
| 20959 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I16x8:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 65535:{ *:[i32] })), ?:{ *:[v4i32] }:$val), ?:{ *:[v4i32] }:$val), 0:{ *:[i32] })) |
| 20960 | /* 42009*/ /*Scope*/ 71, /*->42081*/ |
| 20961 | /* 42010*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 20962 | /* 42012*/ OPC_EmitMergeInputChains1_0, |
| 20963 | /* 42013*/ OPC_EmitInteger, MVT::i32, 0, |
| 20964 | /* 42016*/ OPC_EmitInteger, MVT::i64, 0, |
| 20965 | /* 42019*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 20966 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 20967 | /* 42026*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,3/*65535*/, |
| 20968 | /* 42031*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 20969 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 20970 | /* 42038*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 20971 | MVT::v16i8, 1/*#Ops*/, 7, // Results = #8 |
| 20972 | /* 42045*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 20973 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 20974 | /* 42053*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I16x8), 0, |
| 20975 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 20976 | /* 42061*/ OPC_EmitInteger, MVT::i32, 0, |
| 20977 | /* 42064*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 20978 | MVT::i64, 2/*#Ops*/, 10, 11, // Results = #12 |
| 20979 | /* 42072*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 20980 | 4/*#Ops*/, 3, 2, 5, 12, |
| 20981 | // Src: (st v4i32:{ *:[v4i32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi16>> - Complexity = 10 |
| 20982 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I16x8:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 65535:{ *:[i32] })), ?:{ *:[v4i32] }:$val), ?:{ *:[v4i32] }:$val), 0:{ *:[i32] })) |
| 20983 | /* 42081*/ 0, /*End of Scope*/ |
| 20984 | /* 42082*/ 0, /*End of Scope*/ |
| 20985 | /* 42083*/ 0, // EndSwitchOpcode |
| 20986 | /* 42084*/ /*Scope*/ 41|128,3/*425*/, /*->42511*/ |
| 20987 | /* 42086*/ OPC_RecordChild2, // #2 = $off |
| 20988 | /* 42087*/ OPC_Scope, 98|128,1/*226*/, /*->42316*/ // 3 children in Scope |
| 20989 | /* 42090*/ OPC_MoveChild2, |
| 20990 | /* 42091*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 20991 | /* 42094*/ OPC_MoveParent, |
| 20992 | /* 42095*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 20993 | /* 42097*/ OPC_Scope, 60, /*->42159*/ // 2 children in Scope |
| 20994 | /* 42099*/ OPC_CheckPredicate, 19, // Predicate_store |
| 20995 | /* 42101*/ OPC_Scope, 27, /*->42130*/ // 2 children in Scope |
| 20996 | /* 42103*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 20997 | /* 42105*/ OPC_EmitMergeInputChains1_0, |
| 20998 | /* 42106*/ OPC_EmitInteger, MVT::i32, 0, |
| 20999 | /* 42109*/ OPC_EmitConvertToTarget, 2, |
| 21000 | /* 42111*/ OPC_EmitInteger, MVT::i32, 0, |
| 21001 | /* 42114*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 21002 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 21003 | /* 42121*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21004 | 4/*#Ops*/, 3, 4, 6, 1, |
| 21005 | // Src: (st v4i32:{ *:[v4i32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 21006 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), v4i32:{ *:[v4i32] }:$val) |
| 21007 | /* 42130*/ /*Scope*/ 27, /*->42158*/ |
| 21008 | /* 42131*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21009 | /* 42133*/ OPC_EmitMergeInputChains1_0, |
| 21010 | /* 42134*/ OPC_EmitInteger, MVT::i32, 0, |
| 21011 | /* 42137*/ OPC_EmitConvertToTarget, 2, |
| 21012 | /* 42139*/ OPC_EmitInteger, MVT::i64, 0, |
| 21013 | /* 42142*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 21014 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 21015 | /* 42149*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21016 | 4/*#Ops*/, 3, 4, 6, 1, |
| 21017 | // Src: (st v4i32:{ *:[v4i32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 21018 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), v4i32:{ *:[v4i32] }:$val) |
| 21019 | /* 42158*/ 0, /*End of Scope*/ |
| 21020 | /* 42159*/ /*Scope*/ 26|128,1/*154*/, /*->42315*/ |
| 21021 | /* 42161*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 21022 | /* 42163*/ OPC_CheckPredicate, 22, // Predicate_truncstorevi16 |
| 21023 | /* 42165*/ OPC_Scope, 73, /*->42240*/ // 2 children in Scope |
| 21024 | /* 42167*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21025 | /* 42169*/ OPC_EmitMergeInputChains1_0, |
| 21026 | /* 42170*/ OPC_EmitInteger, MVT::i32, 0, |
| 21027 | /* 42173*/ OPC_EmitConvertToTarget, 2, |
| 21028 | /* 42175*/ OPC_EmitInteger, MVT::i32, 0, |
| 21029 | /* 42178*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 21030 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 21031 | /* 42185*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,3/*65535*/, |
| 21032 | /* 42190*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 21033 | MVT::i32, 1/*#Ops*/, 7, // Results = #8 |
| 21034 | /* 42197*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 21035 | MVT::v16i8, 1/*#Ops*/, 8, // Results = #9 |
| 21036 | /* 42204*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 21037 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 21038 | /* 42212*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I16x8), 0, |
| 21039 | MVT::v16i8, 2/*#Ops*/, 10, 1, // Results = #11 |
| 21040 | /* 42220*/ OPC_EmitInteger, MVT::i32, 0, |
| 21041 | /* 42223*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 21042 | MVT::i64, 2/*#Ops*/, 11, 12, // Results = #13 |
| 21043 | /* 42231*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21044 | 4/*#Ops*/, 3, 4, 6, 13, |
| 21045 | // Src: (st v4i32:{ *:[v4i32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi16>> - Complexity = 7 |
| 21046 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I16x8:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 65535:{ *:[i32] })), ?:{ *:[v4i32] }:$val), ?:{ *:[v4i32] }:$val), 0:{ *:[i32] })) |
| 21047 | /* 42240*/ /*Scope*/ 73, /*->42314*/ |
| 21048 | /* 42241*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21049 | /* 42243*/ OPC_EmitMergeInputChains1_0, |
| 21050 | /* 42244*/ OPC_EmitInteger, MVT::i32, 0, |
| 21051 | /* 42247*/ OPC_EmitConvertToTarget, 2, |
| 21052 | /* 42249*/ OPC_EmitInteger, MVT::i64, 0, |
| 21053 | /* 42252*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 21054 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 21055 | /* 42259*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,3/*65535*/, |
| 21056 | /* 42264*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 21057 | MVT::i32, 1/*#Ops*/, 7, // Results = #8 |
| 21058 | /* 42271*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 21059 | MVT::v16i8, 1/*#Ops*/, 8, // Results = #9 |
| 21060 | /* 42278*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 21061 | MVT::v16i8, 2/*#Ops*/, 9, 1, // Results = #10 |
| 21062 | /* 42286*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I16x8), 0, |
| 21063 | MVT::v16i8, 2/*#Ops*/, 10, 1, // Results = #11 |
| 21064 | /* 42294*/ OPC_EmitInteger, MVT::i32, 0, |
| 21065 | /* 42297*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 21066 | MVT::i64, 2/*#Ops*/, 11, 12, // Results = #13 |
| 21067 | /* 42305*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21068 | 4/*#Ops*/, 3, 4, 6, 13, |
| 21069 | // Src: (st v4i32:{ *:[v4i32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi16>> - Complexity = 7 |
| 21070 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I16x8:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 65535:{ *:[i32] })), ?:{ *:[v4i32] }:$val), ?:{ *:[v4i32] }:$val), 0:{ *:[i32] })) |
| 21071 | /* 42314*/ 0, /*End of Scope*/ |
| 21072 | /* 42315*/ 0, /*End of Scope*/ |
| 21073 | /* 42316*/ /*Scope*/ 96, /*->42413*/ |
| 21074 | /* 42317*/ OPC_CheckChild2Type, MVT::i32, |
| 21075 | /* 42319*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21076 | /* 42321*/ OPC_Scope, 20, /*->42343*/ // 2 children in Scope |
| 21077 | /* 42323*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21078 | /* 42325*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21079 | /* 42327*/ OPC_EmitMergeInputChains1_0, |
| 21080 | /* 42328*/ OPC_EmitInteger, MVT::i32, 0, |
| 21081 | /* 42331*/ OPC_EmitInteger, MVT::i32, 0, |
| 21082 | /* 42334*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21083 | 4/*#Ops*/, 3, 4, 2, 1, |
| 21084 | // Src: (st v4i32:{ *:[v4i32] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 21085 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, v4i32:{ *:[v4i32] }:$val) |
| 21086 | /* 42343*/ /*Scope*/ 68, /*->42412*/ |
| 21087 | /* 42344*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 21088 | /* 42346*/ OPC_CheckPredicate, 22, // Predicate_truncstorevi16 |
| 21089 | /* 42348*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21090 | /* 42350*/ OPC_EmitMergeInputChains1_0, |
| 21091 | /* 42351*/ OPC_EmitInteger, MVT::i32, 0, |
| 21092 | /* 42354*/ OPC_EmitInteger, MVT::i32, 0, |
| 21093 | /* 42357*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,3/*65535*/, |
| 21094 | /* 42362*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 21095 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 21096 | /* 42369*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 21097 | MVT::v16i8, 1/*#Ops*/, 6, // Results = #7 |
| 21098 | /* 42376*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 21099 | MVT::v16i8, 2/*#Ops*/, 7, 1, // Results = #8 |
| 21100 | /* 42384*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I16x8), 0, |
| 21101 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 21102 | /* 42392*/ OPC_EmitInteger, MVT::i32, 0, |
| 21103 | /* 42395*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 21104 | MVT::i64, 2/*#Ops*/, 9, 10, // Results = #11 |
| 21105 | /* 42403*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21106 | 4/*#Ops*/, 3, 4, 2, 11, |
| 21107 | // Src: (st v4i32:{ *:[v4i32] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi16>> - Complexity = 4 |
| 21108 | // Dst: (STORE_I64_A32 0:{ *:[i32] }, 0:{ *:[i32] }, ?:{ *:[i32] }:$addr, (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I16x8:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 65535:{ *:[i32] })), ?:{ *:[v4i32] }:$val), ?:{ *:[v4i32] }:$val), 0:{ *:[i32] })) |
| 21109 | /* 42412*/ 0, /*End of Scope*/ |
| 21110 | /* 42413*/ /*Scope*/ 96, /*->42510*/ |
| 21111 | /* 42414*/ OPC_CheckChild2Type, MVT::i64, |
| 21112 | /* 42416*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21113 | /* 42418*/ OPC_Scope, 20, /*->42440*/ // 2 children in Scope |
| 21114 | /* 42420*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21115 | /* 42422*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21116 | /* 42424*/ OPC_EmitMergeInputChains1_0, |
| 21117 | /* 42425*/ OPC_EmitInteger, MVT::i32, 0, |
| 21118 | /* 42428*/ OPC_EmitInteger, MVT::i64, 0, |
| 21119 | /* 42431*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21120 | 4/*#Ops*/, 3, 4, 2, 1, |
| 21121 | // Src: (st v4i32:{ *:[v4i32] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 21122 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, v4i32:{ *:[v4i32] }:$val) |
| 21123 | /* 42440*/ /*Scope*/ 68, /*->42509*/ |
| 21124 | /* 42441*/ OPC_CheckPredicate, 20, // Predicate_truncstore |
| 21125 | /* 42443*/ OPC_CheckPredicate, 22, // Predicate_truncstorevi16 |
| 21126 | /* 42445*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21127 | /* 42447*/ OPC_EmitMergeInputChains1_0, |
| 21128 | /* 42448*/ OPC_EmitInteger, MVT::i32, 0, |
| 21129 | /* 42451*/ OPC_EmitInteger, MVT::i64, 0, |
| 21130 | /* 42454*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,3/*65535*/, |
| 21131 | /* 42459*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 21132 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 21133 | /* 42466*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 21134 | MVT::v16i8, 1/*#Ops*/, 6, // Results = #7 |
| 21135 | /* 42473*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::AND), 0, |
| 21136 | MVT::v16i8, 2/*#Ops*/, 7, 1, // Results = #8 |
| 21137 | /* 42481*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::NARROW_U_I16x8), 0, |
| 21138 | MVT::v16i8, 2/*#Ops*/, 8, 1, // Results = #9 |
| 21139 | /* 42489*/ OPC_EmitInteger, MVT::i32, 0, |
| 21140 | /* 42492*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 21141 | MVT::i64, 2/*#Ops*/, 9, 10, // Results = #11 |
| 21142 | /* 42500*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21143 | 4/*#Ops*/, 3, 4, 2, 11, |
| 21144 | // Src: (st v4i32:{ *:[v4i32] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorevi16>> - Complexity = 4 |
| 21145 | // Dst: (STORE_I64_A64 0:{ *:[i32] }, 0:{ *:[i64] }, ?:{ *:[i64] }:$addr, (EXTRACT_LANE_I64x2:{ *:[i64] } (NARROW_U_I16x8:{ *:[v16i8] } (AND:{ *:[v16i8] } (SPLAT_I32x4:{ *:[v16i8] } (CONST_I32:{ *:[i32] } 65535:{ *:[i32] })), ?:{ *:[v4i32] }:$val), ?:{ *:[v4i32] }:$val), 0:{ *:[i32] })) |
| 21146 | /* 42509*/ 0, /*End of Scope*/ |
| 21147 | /* 42510*/ 0, /*End of Scope*/ |
| 21148 | /* 42511*/ 0, /*End of Scope*/ |
| 21149 | /* 42512*/ /*Scope*/ 67|128,2/*323*/, /*->42837*/ |
| 21150 | /* 42514*/ OPC_CheckChild1Type, MVT::v2i64, |
| 21151 | /* 42516*/ OPC_Scope, 67|128,1/*195*/, /*->42714*/ // 2 children in Scope |
| 21152 | /* 42519*/ OPC_MoveChild2, |
| 21153 | /* 42520*/ OPC_SwitchOpcode /*3 cases */, 59, TARGET_VAL(ISD::ADD),// ->42583 |
| 21154 | /* 42524*/ OPC_RecordChild0, // #2 = $addr |
| 21155 | /* 42525*/ OPC_RecordChild1, // #3 = $off |
| 21156 | /* 42526*/ OPC_MoveChild1, |
| 21157 | /* 42527*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 21158 | /* 42530*/ OPC_MoveParent, |
| 21159 | /* 42531*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 21160 | /* 42533*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->42558 |
| 21161 | /* 42536*/ OPC_MoveParent, |
| 21162 | /* 42537*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21163 | /* 42539*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21164 | /* 42541*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21165 | /* 42543*/ OPC_EmitMergeInputChains1_0, |
| 21166 | /* 42544*/ OPC_EmitInteger, MVT::i32, 0, |
| 21167 | /* 42547*/ OPC_EmitConvertToTarget, 3, |
| 21168 | /* 42549*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21169 | 4/*#Ops*/, 4, 5, 2, 1, |
| 21170 | // Src: (st v2i64:{ *:[v2i64] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 21171 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, v2i64:{ *:[v2i64] }:$val) |
| 21172 | /* 42558*/ /*SwitchType*/ 22, MVT::i64,// ->42582 |
| 21173 | /* 42560*/ OPC_MoveParent, |
| 21174 | /* 42561*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21175 | /* 42563*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21176 | /* 42565*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21177 | /* 42567*/ OPC_EmitMergeInputChains1_0, |
| 21178 | /* 42568*/ OPC_EmitInteger, MVT::i32, 0, |
| 21179 | /* 42571*/ OPC_EmitConvertToTarget, 3, |
| 21180 | /* 42573*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21181 | 4/*#Ops*/, 4, 5, 2, 1, |
| 21182 | // Src: (st v2i64:{ *:[v2i64] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 21183 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, v2i64:{ *:[v2i64] }:$val) |
| 21184 | /* 42582*/ 0, // EndSwitchType |
| 21185 | /* 42583*/ /*SwitchOpcode*/ 59, TARGET_VAL(ISD::OR),// ->42645 |
| 21186 | /* 42586*/ OPC_RecordChild0, // #2 = $addr |
| 21187 | /* 42587*/ OPC_RecordChild1, // #3 = $off |
| 21188 | /* 42588*/ OPC_MoveChild1, |
| 21189 | /* 42589*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 21190 | /* 42592*/ OPC_MoveParent, |
| 21191 | /* 42593*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 21192 | /* 42595*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->42620 |
| 21193 | /* 42598*/ OPC_MoveParent, |
| 21194 | /* 42599*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21195 | /* 42601*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21196 | /* 42603*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21197 | /* 42605*/ OPC_EmitMergeInputChains1_0, |
| 21198 | /* 42606*/ OPC_EmitInteger, MVT::i32, 0, |
| 21199 | /* 42609*/ OPC_EmitConvertToTarget, 3, |
| 21200 | /* 42611*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21201 | 4/*#Ops*/, 4, 5, 2, 1, |
| 21202 | // Src: (st v2i64:{ *:[v2i64] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 21203 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, v2i64:{ *:[v2i64] }:$val) |
| 21204 | /* 42620*/ /*SwitchType*/ 22, MVT::i64,// ->42644 |
| 21205 | /* 42622*/ OPC_MoveParent, |
| 21206 | /* 42623*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21207 | /* 42625*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21208 | /* 42627*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21209 | /* 42629*/ OPC_EmitMergeInputChains1_0, |
| 21210 | /* 42630*/ OPC_EmitInteger, MVT::i32, 0, |
| 21211 | /* 42633*/ OPC_EmitConvertToTarget, 3, |
| 21212 | /* 42635*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21213 | 4/*#Ops*/, 4, 5, 2, 1, |
| 21214 | // Src: (st v2i64:{ *:[v2i64] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 21215 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, v2i64:{ *:[v2i64] }:$val) |
| 21216 | /* 42644*/ 0, // EndSwitchType |
| 21217 | /* 42645*/ /*SwitchOpcode*/ 65, TARGET_VAL(WebAssemblyISD::Wrapper),// ->42713 |
| 21218 | /* 42648*/ OPC_RecordChild0, // #2 = $off |
| 21219 | /* 42649*/ OPC_MoveChild0, |
| 21220 | /* 42650*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 21221 | /* 42653*/ OPC_MoveParent, |
| 21222 | /* 42654*/ OPC_MoveParent, |
| 21223 | /* 42655*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21224 | /* 42657*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21225 | /* 42659*/ OPC_Scope, 25, /*->42686*/ // 2 children in Scope |
| 21226 | /* 42661*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 21227 | /* 42663*/ OPC_EmitMergeInputChains1_0, |
| 21228 | /* 42664*/ OPC_EmitInteger, MVT::i32, 0, |
| 21229 | /* 42667*/ OPC_EmitInteger, MVT::i32, 0, |
| 21230 | /* 42670*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 21231 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 21232 | /* 42677*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21233 | 4/*#Ops*/, 3, 2, 5, 1, |
| 21234 | // Src: (st v2i64:{ *:[v2i64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 21235 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), v2i64:{ *:[v2i64] }:$val) |
| 21236 | /* 42686*/ /*Scope*/ 25, /*->42712*/ |
| 21237 | /* 42687*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 21238 | /* 42689*/ OPC_EmitMergeInputChains1_0, |
| 21239 | /* 42690*/ OPC_EmitInteger, MVT::i32, 0, |
| 21240 | /* 42693*/ OPC_EmitInteger, MVT::i64, 0, |
| 21241 | /* 42696*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 21242 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 21243 | /* 42703*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21244 | 4/*#Ops*/, 3, 2, 5, 1, |
| 21245 | // Src: (st v2i64:{ *:[v2i64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 21246 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), v2i64:{ *:[v2i64] }:$val) |
| 21247 | /* 42712*/ 0, /*End of Scope*/ |
| 21248 | /* 42713*/ 0, // EndSwitchOpcode |
| 21249 | /* 42714*/ /*Scope*/ 121, /*->42836*/ |
| 21250 | /* 42715*/ OPC_RecordChild2, // #2 = $off |
| 21251 | /* 42716*/ OPC_Scope, 67, /*->42785*/ // 3 children in Scope |
| 21252 | /* 42718*/ OPC_MoveChild2, |
| 21253 | /* 42719*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 21254 | /* 42722*/ OPC_MoveParent, |
| 21255 | /* 42723*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21256 | /* 42725*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21257 | /* 42727*/ OPC_Scope, 27, /*->42756*/ // 2 children in Scope |
| 21258 | /* 42729*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21259 | /* 42731*/ OPC_EmitMergeInputChains1_0, |
| 21260 | /* 42732*/ OPC_EmitInteger, MVT::i32, 0, |
| 21261 | /* 42735*/ OPC_EmitConvertToTarget, 2, |
| 21262 | /* 42737*/ OPC_EmitInteger, MVT::i32, 0, |
| 21263 | /* 42740*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 21264 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 21265 | /* 42747*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21266 | 4/*#Ops*/, 3, 4, 6, 1, |
| 21267 | // Src: (st v2i64:{ *:[v2i64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 21268 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), v2i64:{ *:[v2i64] }:$val) |
| 21269 | /* 42756*/ /*Scope*/ 27, /*->42784*/ |
| 21270 | /* 42757*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21271 | /* 42759*/ OPC_EmitMergeInputChains1_0, |
| 21272 | /* 42760*/ OPC_EmitInteger, MVT::i32, 0, |
| 21273 | /* 42763*/ OPC_EmitConvertToTarget, 2, |
| 21274 | /* 42765*/ OPC_EmitInteger, MVT::i64, 0, |
| 21275 | /* 42768*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 21276 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 21277 | /* 42775*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21278 | 4/*#Ops*/, 3, 4, 6, 1, |
| 21279 | // Src: (st v2i64:{ *:[v2i64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 21280 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), v2i64:{ *:[v2i64] }:$val) |
| 21281 | /* 42784*/ 0, /*End of Scope*/ |
| 21282 | /* 42785*/ /*Scope*/ 24, /*->42810*/ |
| 21283 | /* 42786*/ OPC_CheckChild2Type, MVT::i32, |
| 21284 | /* 42788*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21285 | /* 42790*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21286 | /* 42792*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21287 | /* 42794*/ OPC_EmitMergeInputChains1_0, |
| 21288 | /* 42795*/ OPC_EmitInteger, MVT::i32, 0, |
| 21289 | /* 42798*/ OPC_EmitInteger, MVT::i32, 0, |
| 21290 | /* 42801*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21291 | 4/*#Ops*/, 3, 4, 2, 1, |
| 21292 | // Src: (st v2i64:{ *:[v2i64] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 21293 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, v2i64:{ *:[v2i64] }:$val) |
| 21294 | /* 42810*/ /*Scope*/ 24, /*->42835*/ |
| 21295 | /* 42811*/ OPC_CheckChild2Type, MVT::i64, |
| 21296 | /* 42813*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21297 | /* 42815*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21298 | /* 42817*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21299 | /* 42819*/ OPC_EmitMergeInputChains1_0, |
| 21300 | /* 42820*/ OPC_EmitInteger, MVT::i32, 0, |
| 21301 | /* 42823*/ OPC_EmitInteger, MVT::i64, 0, |
| 21302 | /* 42826*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21303 | 4/*#Ops*/, 3, 4, 2, 1, |
| 21304 | // Src: (st v2i64:{ *:[v2i64] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 21305 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, v2i64:{ *:[v2i64] }:$val) |
| 21306 | /* 42835*/ 0, /*End of Scope*/ |
| 21307 | /* 42836*/ 0, /*End of Scope*/ |
| 21308 | /* 42837*/ /*Scope*/ 67|128,2/*323*/, /*->43162*/ |
| 21309 | /* 42839*/ OPC_CheckChild1Type, MVT::v4f32, |
| 21310 | /* 42841*/ OPC_Scope, 67|128,1/*195*/, /*->43039*/ // 2 children in Scope |
| 21311 | /* 42844*/ OPC_MoveChild2, |
| 21312 | /* 42845*/ OPC_SwitchOpcode /*3 cases */, 59, TARGET_VAL(ISD::ADD),// ->42908 |
| 21313 | /* 42849*/ OPC_RecordChild0, // #2 = $addr |
| 21314 | /* 42850*/ OPC_RecordChild1, // #3 = $off |
| 21315 | /* 42851*/ OPC_MoveChild1, |
| 21316 | /* 42852*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 21317 | /* 42855*/ OPC_MoveParent, |
| 21318 | /* 42856*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 21319 | /* 42858*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->42883 |
| 21320 | /* 42861*/ OPC_MoveParent, |
| 21321 | /* 42862*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21322 | /* 42864*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21323 | /* 42866*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21324 | /* 42868*/ OPC_EmitMergeInputChains1_0, |
| 21325 | /* 42869*/ OPC_EmitInteger, MVT::i32, 0, |
| 21326 | /* 42872*/ OPC_EmitConvertToTarget, 3, |
| 21327 | /* 42874*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21328 | 4/*#Ops*/, 4, 5, 2, 1, |
| 21329 | // Src: (st v4f32:{ *:[v4f32] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 21330 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, v4f32:{ *:[v4f32] }:$val) |
| 21331 | /* 42883*/ /*SwitchType*/ 22, MVT::i64,// ->42907 |
| 21332 | /* 42885*/ OPC_MoveParent, |
| 21333 | /* 42886*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21334 | /* 42888*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21335 | /* 42890*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21336 | /* 42892*/ OPC_EmitMergeInputChains1_0, |
| 21337 | /* 42893*/ OPC_EmitInteger, MVT::i32, 0, |
| 21338 | /* 42896*/ OPC_EmitConvertToTarget, 3, |
| 21339 | /* 42898*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21340 | 4/*#Ops*/, 4, 5, 2, 1, |
| 21341 | // Src: (st v4f32:{ *:[v4f32] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 21342 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, v4f32:{ *:[v4f32] }:$val) |
| 21343 | /* 42907*/ 0, // EndSwitchType |
| 21344 | /* 42908*/ /*SwitchOpcode*/ 59, TARGET_VAL(ISD::OR),// ->42970 |
| 21345 | /* 42911*/ OPC_RecordChild0, // #2 = $addr |
| 21346 | /* 42912*/ OPC_RecordChild1, // #3 = $off |
| 21347 | /* 42913*/ OPC_MoveChild1, |
| 21348 | /* 42914*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 21349 | /* 42917*/ OPC_MoveParent, |
| 21350 | /* 42918*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 21351 | /* 42920*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->42945 |
| 21352 | /* 42923*/ OPC_MoveParent, |
| 21353 | /* 42924*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21354 | /* 42926*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21355 | /* 42928*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21356 | /* 42930*/ OPC_EmitMergeInputChains1_0, |
| 21357 | /* 42931*/ OPC_EmitInteger, MVT::i32, 0, |
| 21358 | /* 42934*/ OPC_EmitConvertToTarget, 3, |
| 21359 | /* 42936*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21360 | 4/*#Ops*/, 4, 5, 2, 1, |
| 21361 | // Src: (st v4f32:{ *:[v4f32] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 21362 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, v4f32:{ *:[v4f32] }:$val) |
| 21363 | /* 42945*/ /*SwitchType*/ 22, MVT::i64,// ->42969 |
| 21364 | /* 42947*/ OPC_MoveParent, |
| 21365 | /* 42948*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21366 | /* 42950*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21367 | /* 42952*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21368 | /* 42954*/ OPC_EmitMergeInputChains1_0, |
| 21369 | /* 42955*/ OPC_EmitInteger, MVT::i32, 0, |
| 21370 | /* 42958*/ OPC_EmitConvertToTarget, 3, |
| 21371 | /* 42960*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21372 | 4/*#Ops*/, 4, 5, 2, 1, |
| 21373 | // Src: (st v4f32:{ *:[v4f32] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 21374 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, v4f32:{ *:[v4f32] }:$val) |
| 21375 | /* 42969*/ 0, // EndSwitchType |
| 21376 | /* 42970*/ /*SwitchOpcode*/ 65, TARGET_VAL(WebAssemblyISD::Wrapper),// ->43038 |
| 21377 | /* 42973*/ OPC_RecordChild0, // #2 = $off |
| 21378 | /* 42974*/ OPC_MoveChild0, |
| 21379 | /* 42975*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 21380 | /* 42978*/ OPC_MoveParent, |
| 21381 | /* 42979*/ OPC_MoveParent, |
| 21382 | /* 42980*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21383 | /* 42982*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21384 | /* 42984*/ OPC_Scope, 25, /*->43011*/ // 2 children in Scope |
| 21385 | /* 42986*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 21386 | /* 42988*/ OPC_EmitMergeInputChains1_0, |
| 21387 | /* 42989*/ OPC_EmitInteger, MVT::i32, 0, |
| 21388 | /* 42992*/ OPC_EmitInteger, MVT::i32, 0, |
| 21389 | /* 42995*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 21390 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 21391 | /* 43002*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21392 | 4/*#Ops*/, 3, 2, 5, 1, |
| 21393 | // Src: (st v4f32:{ *:[v4f32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 21394 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), v4f32:{ *:[v4f32] }:$val) |
| 21395 | /* 43011*/ /*Scope*/ 25, /*->43037*/ |
| 21396 | /* 43012*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 21397 | /* 43014*/ OPC_EmitMergeInputChains1_0, |
| 21398 | /* 43015*/ OPC_EmitInteger, MVT::i32, 0, |
| 21399 | /* 43018*/ OPC_EmitInteger, MVT::i64, 0, |
| 21400 | /* 43021*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 21401 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 21402 | /* 43028*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21403 | 4/*#Ops*/, 3, 2, 5, 1, |
| 21404 | // Src: (st v4f32:{ *:[v4f32] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 21405 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), v4f32:{ *:[v4f32] }:$val) |
| 21406 | /* 43037*/ 0, /*End of Scope*/ |
| 21407 | /* 43038*/ 0, // EndSwitchOpcode |
| 21408 | /* 43039*/ /*Scope*/ 121, /*->43161*/ |
| 21409 | /* 43040*/ OPC_RecordChild2, // #2 = $off |
| 21410 | /* 43041*/ OPC_Scope, 67, /*->43110*/ // 3 children in Scope |
| 21411 | /* 43043*/ OPC_MoveChild2, |
| 21412 | /* 43044*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 21413 | /* 43047*/ OPC_MoveParent, |
| 21414 | /* 43048*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21415 | /* 43050*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21416 | /* 43052*/ OPC_Scope, 27, /*->43081*/ // 2 children in Scope |
| 21417 | /* 43054*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21418 | /* 43056*/ OPC_EmitMergeInputChains1_0, |
| 21419 | /* 43057*/ OPC_EmitInteger, MVT::i32, 0, |
| 21420 | /* 43060*/ OPC_EmitConvertToTarget, 2, |
| 21421 | /* 43062*/ OPC_EmitInteger, MVT::i32, 0, |
| 21422 | /* 43065*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 21423 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 21424 | /* 43072*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21425 | 4/*#Ops*/, 3, 4, 6, 1, |
| 21426 | // Src: (st v4f32:{ *:[v4f32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 21427 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), v4f32:{ *:[v4f32] }:$val) |
| 21428 | /* 43081*/ /*Scope*/ 27, /*->43109*/ |
| 21429 | /* 43082*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21430 | /* 43084*/ OPC_EmitMergeInputChains1_0, |
| 21431 | /* 43085*/ OPC_EmitInteger, MVT::i32, 0, |
| 21432 | /* 43088*/ OPC_EmitConvertToTarget, 2, |
| 21433 | /* 43090*/ OPC_EmitInteger, MVT::i64, 0, |
| 21434 | /* 43093*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 21435 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 21436 | /* 43100*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21437 | 4/*#Ops*/, 3, 4, 6, 1, |
| 21438 | // Src: (st v4f32:{ *:[v4f32] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 21439 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), v4f32:{ *:[v4f32] }:$val) |
| 21440 | /* 43109*/ 0, /*End of Scope*/ |
| 21441 | /* 43110*/ /*Scope*/ 24, /*->43135*/ |
| 21442 | /* 43111*/ OPC_CheckChild2Type, MVT::i32, |
| 21443 | /* 43113*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21444 | /* 43115*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21445 | /* 43117*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21446 | /* 43119*/ OPC_EmitMergeInputChains1_0, |
| 21447 | /* 43120*/ OPC_EmitInteger, MVT::i32, 0, |
| 21448 | /* 43123*/ OPC_EmitInteger, MVT::i32, 0, |
| 21449 | /* 43126*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21450 | 4/*#Ops*/, 3, 4, 2, 1, |
| 21451 | // Src: (st v4f32:{ *:[v4f32] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 21452 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, v4f32:{ *:[v4f32] }:$val) |
| 21453 | /* 43135*/ /*Scope*/ 24, /*->43160*/ |
| 21454 | /* 43136*/ OPC_CheckChild2Type, MVT::i64, |
| 21455 | /* 43138*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21456 | /* 43140*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21457 | /* 43142*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21458 | /* 43144*/ OPC_EmitMergeInputChains1_0, |
| 21459 | /* 43145*/ OPC_EmitInteger, MVT::i32, 0, |
| 21460 | /* 43148*/ OPC_EmitInteger, MVT::i64, 0, |
| 21461 | /* 43151*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21462 | 4/*#Ops*/, 3, 4, 2, 1, |
| 21463 | // Src: (st v4f32:{ *:[v4f32] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 21464 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, v4f32:{ *:[v4f32] }:$val) |
| 21465 | /* 43160*/ 0, /*End of Scope*/ |
| 21466 | /* 43161*/ 0, /*End of Scope*/ |
| 21467 | /* 43162*/ /*Scope*/ 67|128,2/*323*/, /*->43487*/ |
| 21468 | /* 43164*/ OPC_CheckChild1Type, MVT::v2f64, |
| 21469 | /* 43166*/ OPC_Scope, 67|128,1/*195*/, /*->43364*/ // 2 children in Scope |
| 21470 | /* 43169*/ OPC_MoveChild2, |
| 21471 | /* 43170*/ OPC_SwitchOpcode /*3 cases */, 59, TARGET_VAL(ISD::ADD),// ->43233 |
| 21472 | /* 43174*/ OPC_RecordChild0, // #2 = $addr |
| 21473 | /* 43175*/ OPC_RecordChild1, // #3 = $off |
| 21474 | /* 43176*/ OPC_MoveChild1, |
| 21475 | /* 43177*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 21476 | /* 43180*/ OPC_MoveParent, |
| 21477 | /* 43181*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 21478 | /* 43183*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->43208 |
| 21479 | /* 43186*/ OPC_MoveParent, |
| 21480 | /* 43187*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21481 | /* 43189*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21482 | /* 43191*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21483 | /* 43193*/ OPC_EmitMergeInputChains1_0, |
| 21484 | /* 43194*/ OPC_EmitInteger, MVT::i32, 0, |
| 21485 | /* 43197*/ OPC_EmitConvertToTarget, 3, |
| 21486 | /* 43199*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21487 | 4/*#Ops*/, 4, 5, 2, 1, |
| 21488 | // Src: (st v2f64:{ *:[v2f64] }:$val, (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 21489 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, v2f64:{ *:[v2f64] }:$val) |
| 21490 | /* 43208*/ /*SwitchType*/ 22, MVT::i64,// ->43232 |
| 21491 | /* 43210*/ OPC_MoveParent, |
| 21492 | /* 43211*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21493 | /* 43213*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21494 | /* 43215*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21495 | /* 43217*/ OPC_EmitMergeInputChains1_0, |
| 21496 | /* 43218*/ OPC_EmitInteger, MVT::i32, 0, |
| 21497 | /* 43221*/ OPC_EmitConvertToTarget, 3, |
| 21498 | /* 43223*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21499 | 4/*#Ops*/, 4, 5, 2, 1, |
| 21500 | // Src: (st v2f64:{ *:[v2f64] }:$val, (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 21501 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, v2f64:{ *:[v2f64] }:$val) |
| 21502 | /* 43232*/ 0, // EndSwitchType |
| 21503 | /* 43233*/ /*SwitchOpcode*/ 59, TARGET_VAL(ISD::OR),// ->43295 |
| 21504 | /* 43236*/ OPC_RecordChild0, // #2 = $addr |
| 21505 | /* 43237*/ OPC_RecordChild1, // #3 = $off |
| 21506 | /* 43238*/ OPC_MoveChild1, |
| 21507 | /* 43239*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 21508 | /* 43242*/ OPC_MoveParent, |
| 21509 | /* 43243*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 21510 | /* 43245*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->43270 |
| 21511 | /* 43248*/ OPC_MoveParent, |
| 21512 | /* 43249*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21513 | /* 43251*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21514 | /* 43253*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21515 | /* 43255*/ OPC_EmitMergeInputChains1_0, |
| 21516 | /* 43256*/ OPC_EmitInteger, MVT::i32, 0, |
| 21517 | /* 43259*/ OPC_EmitConvertToTarget, 3, |
| 21518 | /* 43261*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21519 | 4/*#Ops*/, 4, 5, 2, 1, |
| 21520 | // Src: (st v2f64:{ *:[v2f64] }:$val, (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 21521 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, v2f64:{ *:[v2f64] }:$val) |
| 21522 | /* 43270*/ /*SwitchType*/ 22, MVT::i64,// ->43294 |
| 21523 | /* 43272*/ OPC_MoveParent, |
| 21524 | /* 43273*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21525 | /* 43275*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21526 | /* 43277*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21527 | /* 43279*/ OPC_EmitMergeInputChains1_0, |
| 21528 | /* 43280*/ OPC_EmitInteger, MVT::i32, 0, |
| 21529 | /* 43283*/ OPC_EmitConvertToTarget, 3, |
| 21530 | /* 43285*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21531 | 4/*#Ops*/, 4, 5, 2, 1, |
| 21532 | // Src: (st v2f64:{ *:[v2f64] }:$val, (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 11 |
| 21533 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, v2f64:{ *:[v2f64] }:$val) |
| 21534 | /* 43294*/ 0, // EndSwitchType |
| 21535 | /* 43295*/ /*SwitchOpcode*/ 65, TARGET_VAL(WebAssemblyISD::Wrapper),// ->43363 |
| 21536 | /* 43298*/ OPC_RecordChild0, // #2 = $off |
| 21537 | /* 43299*/ OPC_MoveChild0, |
| 21538 | /* 43300*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 21539 | /* 43303*/ OPC_MoveParent, |
| 21540 | /* 43304*/ OPC_MoveParent, |
| 21541 | /* 43305*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21542 | /* 43307*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21543 | /* 43309*/ OPC_Scope, 25, /*->43336*/ // 2 children in Scope |
| 21544 | /* 43311*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 21545 | /* 43313*/ OPC_EmitMergeInputChains1_0, |
| 21546 | /* 43314*/ OPC_EmitInteger, MVT::i32, 0, |
| 21547 | /* 43317*/ OPC_EmitInteger, MVT::i32, 0, |
| 21548 | /* 43320*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 21549 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 21550 | /* 43327*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21551 | 4/*#Ops*/, 3, 2, 5, 1, |
| 21552 | // Src: (st v2f64:{ *:[v2f64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 21553 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), v2f64:{ *:[v2f64] }:$val) |
| 21554 | /* 43336*/ /*Scope*/ 25, /*->43362*/ |
| 21555 | /* 43337*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 21556 | /* 43339*/ OPC_EmitMergeInputChains1_0, |
| 21557 | /* 43340*/ OPC_EmitInteger, MVT::i32, 0, |
| 21558 | /* 43343*/ OPC_EmitInteger, MVT::i64, 0, |
| 21559 | /* 43346*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 21560 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 21561 | /* 43353*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21562 | 4/*#Ops*/, 3, 2, 5, 1, |
| 21563 | // Src: (st v2f64:{ *:[v2f64] }:$val, (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 10 |
| 21564 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), v2f64:{ *:[v2f64] }:$val) |
| 21565 | /* 43362*/ 0, /*End of Scope*/ |
| 21566 | /* 43363*/ 0, // EndSwitchOpcode |
| 21567 | /* 43364*/ /*Scope*/ 121, /*->43486*/ |
| 21568 | /* 43365*/ OPC_RecordChild2, // #2 = $off |
| 21569 | /* 43366*/ OPC_Scope, 67, /*->43435*/ // 3 children in Scope |
| 21570 | /* 43368*/ OPC_MoveChild2, |
| 21571 | /* 43369*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 21572 | /* 43372*/ OPC_MoveParent, |
| 21573 | /* 43373*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21574 | /* 43375*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21575 | /* 43377*/ OPC_Scope, 27, /*->43406*/ // 2 children in Scope |
| 21576 | /* 43379*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21577 | /* 43381*/ OPC_EmitMergeInputChains1_0, |
| 21578 | /* 43382*/ OPC_EmitInteger, MVT::i32, 0, |
| 21579 | /* 43385*/ OPC_EmitConvertToTarget, 2, |
| 21580 | /* 43387*/ OPC_EmitInteger, MVT::i32, 0, |
| 21581 | /* 43390*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 21582 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 21583 | /* 43397*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21584 | 4/*#Ops*/, 3, 4, 6, 1, |
| 21585 | // Src: (st v2f64:{ *:[v2f64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 21586 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), v2f64:{ *:[v2f64] }:$val) |
| 21587 | /* 43406*/ /*Scope*/ 27, /*->43434*/ |
| 21588 | /* 43407*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21589 | /* 43409*/ OPC_EmitMergeInputChains1_0, |
| 21590 | /* 43410*/ OPC_EmitInteger, MVT::i32, 0, |
| 21591 | /* 43413*/ OPC_EmitConvertToTarget, 2, |
| 21592 | /* 43415*/ OPC_EmitInteger, MVT::i64, 0, |
| 21593 | /* 43418*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 21594 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 21595 | /* 43425*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21596 | 4/*#Ops*/, 3, 4, 6, 1, |
| 21597 | // Src: (st v2f64:{ *:[v2f64] }:$val, (imm:{ *:[iPTR] }):$off)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 7 |
| 21598 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), v2f64:{ *:[v2f64] }:$val) |
| 21599 | /* 43434*/ 0, /*End of Scope*/ |
| 21600 | /* 43435*/ /*Scope*/ 24, /*->43460*/ |
| 21601 | /* 43436*/ OPC_CheckChild2Type, MVT::i32, |
| 21602 | /* 43438*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21603 | /* 43440*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21604 | /* 43442*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 21605 | /* 43444*/ OPC_EmitMergeInputChains1_0, |
| 21606 | /* 43445*/ OPC_EmitInteger, MVT::i32, 0, |
| 21607 | /* 43448*/ OPC_EmitInteger, MVT::i32, 0, |
| 21608 | /* 43451*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 21609 | 4/*#Ops*/, 3, 4, 2, 1, |
| 21610 | // Src: (st v2f64:{ *:[v2f64] }:$val, I32:{ *:[i32] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 21611 | // Dst: (STORE_V128_A32 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, v2f64:{ *:[v2f64] }:$val) |
| 21612 | /* 43460*/ /*Scope*/ 24, /*->43485*/ |
| 21613 | /* 43461*/ OPC_CheckChild2Type, MVT::i64, |
| 21614 | /* 43463*/ OPC_CheckPredicate, 18, // Predicate_unindexedstore |
| 21615 | /* 43465*/ OPC_CheckPredicate, 19, // Predicate_store |
| 21616 | /* 43467*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 21617 | /* 43469*/ OPC_EmitMergeInputChains1_0, |
| 21618 | /* 43470*/ OPC_EmitInteger, MVT::i32, 0, |
| 21619 | /* 43473*/ OPC_EmitInteger, MVT::i64, 0, |
| 21620 | /* 43476*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 21621 | 4/*#Ops*/, 3, 4, 2, 1, |
| 21622 | // Src: (st v2f64:{ *:[v2f64] }:$val, I64:{ *:[i64] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 4 |
| 21623 | // Dst: (STORE_V128_A64 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, v2f64:{ *:[v2f64] }:$val) |
| 21624 | /* 43485*/ 0, /*End of Scope*/ |
| 21625 | /* 43486*/ 0, /*End of Scope*/ |
| 21626 | /* 43487*/ 0, /*End of Scope*/ |
| 21627 | /* 43488*/ /*SwitchOpcode*/ 71, TARGET_VAL(ISD::BRCOND),// ->43562 |
| 21628 | /* 43491*/ OPC_RecordNode, // #0 = 'brcond' chained node |
| 21629 | /* 43492*/ OPC_Scope, 49, /*->43543*/ // 2 children in Scope |
| 21630 | /* 43494*/ OPC_MoveChild1, |
| 21631 | /* 43495*/ OPC_CheckOpcode, TARGET_VAL(ISD::SETCC), |
| 21632 | /* 43498*/ OPC_RecordChild0, // #1 = $cond |
| 21633 | /* 43499*/ OPC_CheckChild0Type, MVT::i32, |
| 21634 | /* 43501*/ OPC_CheckChild1Integer, 0, |
| 21635 | /* 43503*/ OPC_CheckType, MVT::i32, |
| 21636 | /* 43505*/ OPC_Scope, 17, /*->43524*/ // 2 children in Scope |
| 21637 | /* 43507*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 21638 | /* 43509*/ OPC_MoveParent, |
| 21639 | /* 43510*/ OPC_RecordChild2, // #2 = $dst |
| 21640 | /* 43511*/ OPC_MoveChild2, |
| 21641 | /* 43512*/ OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| 21642 | /* 43515*/ OPC_MoveParent, |
| 21643 | /* 43516*/ OPC_EmitMergeInputChains1_0, |
| 21644 | /* 43517*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::BR_IF), 0|OPFL_Chain, |
| 21645 | 2/*#Ops*/, 2, 1, |
| 21646 | // Src: (brcond (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) - Complexity = 11 |
| 21647 | // Dst: (BR_IF bb_op:{ *:[Other] }:$dst, I32:{ *:[i32] }:$cond) |
| 21648 | /* 43524*/ /*Scope*/ 17, /*->43542*/ |
| 21649 | /* 43525*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 21650 | /* 43527*/ OPC_MoveParent, |
| 21651 | /* 43528*/ OPC_RecordChild2, // #2 = $dst |
| 21652 | /* 43529*/ OPC_MoveChild2, |
| 21653 | /* 43530*/ OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| 21654 | /* 43533*/ OPC_MoveParent, |
| 21655 | /* 43534*/ OPC_EmitMergeInputChains1_0, |
| 21656 | /* 43535*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::BR_UNLESS), 0|OPFL_Chain, |
| 21657 | 2/*#Ops*/, 2, 1, |
| 21658 | // Src: (brcond (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$dst) - Complexity = 11 |
| 21659 | // Dst: (BR_UNLESS bb_op:{ *:[Other] }:$dst, I32:{ *:[i32] }:$cond) |
| 21660 | /* 43542*/ 0, /*End of Scope*/ |
| 21661 | /* 43543*/ /*Scope*/ 17, /*->43561*/ |
| 21662 | /* 43544*/ OPC_RecordChild1, // #1 = $cond |
| 21663 | /* 43545*/ OPC_CheckChild1Type, MVT::i32, |
| 21664 | /* 43547*/ OPC_RecordChild2, // #2 = $dst |
| 21665 | /* 43548*/ OPC_MoveChild2, |
| 21666 | /* 43549*/ OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| 21667 | /* 43552*/ OPC_MoveParent, |
| 21668 | /* 43553*/ OPC_EmitMergeInputChains1_0, |
| 21669 | /* 43554*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::BR_IF), 0|OPFL_Chain, |
| 21670 | 2/*#Ops*/, 2, 1, |
| 21671 | // Src: (brcond I32:{ *:[i32] }:$cond, (bb:{ *:[Other] }):$dst) - Complexity = 3 |
| 21672 | // Dst: (BR_IF (bb:{ *:[Other] }):$dst, I32:{ *:[i32] }:$cond) |
| 21673 | /* 43561*/ 0, /*End of Scope*/ |
| 21674 | /* 43562*/ /*SwitchOpcode*/ 67, TARGET_VAL(ISD::ROTL),// ->43632 |
| 21675 | /* 43565*/ OPC_RecordChild0, // #0 = $lhs |
| 21676 | /* 43566*/ OPC_Scope, 35, /*->43603*/ // 2 children in Scope |
| 21677 | /* 43568*/ OPC_MoveChild1, |
| 21678 | /* 43569*/ OPC_SwitchType /*2 cases */, 14, MVT::i32,// ->43586 |
| 21679 | /* 43572*/ OPC_CheckAndImm, 31, |
| 21680 | /* 43574*/ OPC_RecordChild0, // #1 = $rhs |
| 21681 | /* 43575*/ OPC_MoveParent, |
| 21682 | /* 43576*/ OPC_CheckType, MVT::i32, |
| 21683 | /* 43578*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ROTL_I32), 0, |
| 21684 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 21685 | // Src: (rotl:{ *:[i32] } I32:{ *:[i32] }:$lhs, (and:{ *:[i32] } I32:{ *:[i32] }:$rhs, 31:{ *:[i32] })) - Complexity = 11 |
| 21686 | // Dst: (ROTL_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 21687 | /* 43586*/ /*SwitchType*/ 14, MVT::i64,// ->43602 |
| 21688 | /* 43588*/ OPC_CheckAndImm, 63, |
| 21689 | /* 43590*/ OPC_RecordChild0, // #1 = $rhs |
| 21690 | /* 43591*/ OPC_MoveParent, |
| 21691 | /* 43592*/ OPC_CheckType, MVT::i64, |
| 21692 | /* 43594*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ROTL_I64), 0, |
| 21693 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 21694 | // Src: (rotl:{ *:[i64] } I64:{ *:[i64] }:$lhs, (and:{ *:[i64] } I64:{ *:[i64] }:$rhs, 63:{ *:[i64] })) - Complexity = 11 |
| 21695 | // Dst: (ROTL_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 21696 | /* 43602*/ 0, // EndSwitchType |
| 21697 | /* 43603*/ /*Scope*/ 27, /*->43631*/ |
| 21698 | /* 43604*/ OPC_RecordChild1, // #1 = $rhs |
| 21699 | /* 43605*/ OPC_SwitchType /*2 cases */, 10, MVT::i32,// ->43618 |
| 21700 | /* 43608*/ OPC_CheckChild1Type, MVT::i32, |
| 21701 | /* 43610*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ROTL_I32), 0, |
| 21702 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 21703 | // Src: (rotl:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 21704 | // Dst: (ROTL_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 21705 | /* 43618*/ /*SwitchType*/ 10, MVT::i64,// ->43630 |
| 21706 | /* 43620*/ OPC_CheckChild1Type, MVT::i64, |
| 21707 | /* 43622*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ROTL_I64), 0, |
| 21708 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 21709 | // Src: (rotl:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 21710 | // Dst: (ROTL_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 21711 | /* 43630*/ 0, // EndSwitchType |
| 21712 | /* 43631*/ 0, /*End of Scope*/ |
| 21713 | /* 43632*/ /*SwitchOpcode*/ 67, TARGET_VAL(ISD::ROTR),// ->43702 |
| 21714 | /* 43635*/ OPC_RecordChild0, // #0 = $lhs |
| 21715 | /* 43636*/ OPC_Scope, 35, /*->43673*/ // 2 children in Scope |
| 21716 | /* 43638*/ OPC_MoveChild1, |
| 21717 | /* 43639*/ OPC_SwitchType /*2 cases */, 14, MVT::i32,// ->43656 |
| 21718 | /* 43642*/ OPC_CheckAndImm, 31, |
| 21719 | /* 43644*/ OPC_RecordChild0, // #1 = $rhs |
| 21720 | /* 43645*/ OPC_MoveParent, |
| 21721 | /* 43646*/ OPC_CheckType, MVT::i32, |
| 21722 | /* 43648*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ROTR_I32), 0, |
| 21723 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 21724 | // Src: (rotr:{ *:[i32] } I32:{ *:[i32] }:$lhs, (and:{ *:[i32] } I32:{ *:[i32] }:$rhs, 31:{ *:[i32] })) - Complexity = 11 |
| 21725 | // Dst: (ROTR_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 21726 | /* 43656*/ /*SwitchType*/ 14, MVT::i64,// ->43672 |
| 21727 | /* 43658*/ OPC_CheckAndImm, 63, |
| 21728 | /* 43660*/ OPC_RecordChild0, // #1 = $rhs |
| 21729 | /* 43661*/ OPC_MoveParent, |
| 21730 | /* 43662*/ OPC_CheckType, MVT::i64, |
| 21731 | /* 43664*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ROTR_I64), 0, |
| 21732 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 21733 | // Src: (rotr:{ *:[i64] } I64:{ *:[i64] }:$lhs, (and:{ *:[i64] } I64:{ *:[i64] }:$rhs, 63:{ *:[i64] })) - Complexity = 11 |
| 21734 | // Dst: (ROTR_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 21735 | /* 43672*/ 0, // EndSwitchType |
| 21736 | /* 43673*/ /*Scope*/ 27, /*->43701*/ |
| 21737 | /* 43674*/ OPC_RecordChild1, // #1 = $rhs |
| 21738 | /* 43675*/ OPC_SwitchType /*2 cases */, 10, MVT::i32,// ->43688 |
| 21739 | /* 43678*/ OPC_CheckChild1Type, MVT::i32, |
| 21740 | /* 43680*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ROTR_I32), 0, |
| 21741 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 21742 | // Src: (rotr:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 21743 | // Dst: (ROTR_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 21744 | /* 43688*/ /*SwitchType*/ 10, MVT::i64,// ->43700 |
| 21745 | /* 43690*/ OPC_CheckChild1Type, MVT::i64, |
| 21746 | /* 43692*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ROTR_I64), 0, |
| 21747 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 21748 | // Src: (rotr:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 21749 | // Dst: (ROTR_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 21750 | /* 43700*/ 0, // EndSwitchType |
| 21751 | /* 43701*/ 0, /*End of Scope*/ |
| 21752 | /* 43702*/ /*SwitchOpcode*/ 108|128,4/*620*/, TARGET_VAL(ISD::SELECT),// ->44326 |
| 21753 | /* 43706*/ OPC_Scope, 13|128,1/*141*/, /*->43850*/ // 8 children in Scope |
| 21754 | /* 43709*/ OPC_MoveChild0, |
| 21755 | /* 43710*/ OPC_CheckOpcode, TARGET_VAL(ISD::SETCC), |
| 21756 | /* 43713*/ OPC_RecordChild0, // #0 = $cond |
| 21757 | /* 43714*/ OPC_CheckChild0Type, MVT::i32, |
| 21758 | /* 43716*/ OPC_CheckChild1Integer, 0, |
| 21759 | /* 43718*/ OPC_CheckType, MVT::i32, |
| 21760 | /* 43720*/ OPC_Scope, 29, /*->43751*/ // 6 children in Scope |
| 21761 | /* 43722*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 21762 | /* 43724*/ OPC_MoveParent, |
| 21763 | /* 43725*/ OPC_RecordChild1, // #1 = $lhs |
| 21764 | /* 43726*/ OPC_RecordChild2, // #2 = $rhs |
| 21765 | /* 43727*/ OPC_SwitchType /*2 cases */, 9, MVT::i32,// ->43739 |
| 21766 | /* 43730*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_I32), 0, |
| 21767 | MVT::i32, 3/*#Ops*/, 1, 2, 0, |
| 21768 | // Src: (select:{ *:[i32] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 11 |
| 21769 | // Dst: (SELECT_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs, I32:{ *:[i32] }:$cond) |
| 21770 | /* 43739*/ /*SwitchType*/ 9, MVT::i64,// ->43750 |
| 21771 | /* 43741*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_I64), 0, |
| 21772 | MVT::i64, 3/*#Ops*/, 1, 2, 0, |
| 21773 | // Src: (select:{ *:[i64] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 11 |
| 21774 | // Dst: (SELECT_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs, I32:{ *:[i32] }:$cond) |
| 21775 | /* 43750*/ 0, // EndSwitchType |
| 21776 | /* 43751*/ /*Scope*/ 29, /*->43781*/ |
| 21777 | /* 43752*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 21778 | /* 43754*/ OPC_MoveParent, |
| 21779 | /* 43755*/ OPC_RecordChild1, // #1 = $lhs |
| 21780 | /* 43756*/ OPC_RecordChild2, // #2 = $rhs |
| 21781 | /* 43757*/ OPC_SwitchType /*2 cases */, 9, MVT::i32,// ->43769 |
| 21782 | /* 43760*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_I32), 0, |
| 21783 | MVT::i32, 3/*#Ops*/, 2, 1, 0, |
| 21784 | // Src: (select:{ *:[i32] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 11 |
| 21785 | // Dst: (SELECT_I32:{ *:[i32] } I32:{ *:[i32] }:$rhs, I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$cond) |
| 21786 | /* 43769*/ /*SwitchType*/ 9, MVT::i64,// ->43780 |
| 21787 | /* 43771*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_I64), 0, |
| 21788 | MVT::i64, 3/*#Ops*/, 2, 1, 0, |
| 21789 | // Src: (select:{ *:[i64] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 11 |
| 21790 | // Dst: (SELECT_I64:{ *:[i64] } I64:{ *:[i64] }:$rhs, I64:{ *:[i64] }:$lhs, I32:{ *:[i32] }:$cond) |
| 21791 | /* 43780*/ 0, // EndSwitchType |
| 21792 | /* 43781*/ /*Scope*/ 16, /*->43798*/ |
| 21793 | /* 43782*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 21794 | /* 43784*/ OPC_MoveParent, |
| 21795 | /* 43785*/ OPC_RecordChild1, // #1 = $lhs |
| 21796 | /* 43786*/ OPC_RecordChild2, // #2 = $rhs |
| 21797 | /* 43787*/ OPC_CheckType, MVT::funcref, |
| 21798 | /* 43789*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_FUNCREF), 0, |
| 21799 | MVT::funcref, 3/*#Ops*/, 1, 2, 0, |
| 21800 | // Src: (select:{ *:[funcref] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), FUNCREF:{ *:[funcref] }:$lhs, FUNCREF:{ *:[funcref] }:$rhs) - Complexity = 11 |
| 21801 | // Dst: (SELECT_FUNCREF:{ *:[funcref] } FUNCREF:{ *:[funcref] }:$lhs, FUNCREF:{ *:[funcref] }:$rhs, I32:{ *:[i32] }:$cond) |
| 21802 | /* 43798*/ /*Scope*/ 16, /*->43815*/ |
| 21803 | /* 43799*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 21804 | /* 43801*/ OPC_MoveParent, |
| 21805 | /* 43802*/ OPC_RecordChild1, // #1 = $lhs |
| 21806 | /* 43803*/ OPC_RecordChild2, // #2 = $rhs |
| 21807 | /* 43804*/ OPC_CheckType, MVT::funcref, |
| 21808 | /* 43806*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_FUNCREF), 0, |
| 21809 | MVT::funcref, 3/*#Ops*/, 2, 1, 0, |
| 21810 | // Src: (select:{ *:[funcref] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), FUNCREF:{ *:[funcref] }:$lhs, FUNCREF:{ *:[funcref] }:$rhs) - Complexity = 11 |
| 21811 | // Dst: (SELECT_FUNCREF:{ *:[funcref] } FUNCREF:{ *:[funcref] }:$rhs, FUNCREF:{ *:[funcref] }:$lhs, I32:{ *:[i32] }:$cond) |
| 21812 | /* 43815*/ /*Scope*/ 16, /*->43832*/ |
| 21813 | /* 43816*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 21814 | /* 43818*/ OPC_MoveParent, |
| 21815 | /* 43819*/ OPC_RecordChild1, // #1 = $lhs |
| 21816 | /* 43820*/ OPC_RecordChild2, // #2 = $rhs |
| 21817 | /* 43821*/ OPC_CheckType, MVT::externref, |
| 21818 | /* 43823*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_EXTERNREF), 0, |
| 21819 | MVT::externref, 3/*#Ops*/, 1, 2, 0, |
| 21820 | // Src: (select:{ *:[externref] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), EXTERNREF:{ *:[externref] }:$lhs, EXTERNREF:{ *:[externref] }:$rhs) - Complexity = 11 |
| 21821 | // Dst: (SELECT_EXTERNREF:{ *:[externref] } EXTERNREF:{ *:[externref] }:$lhs, EXTERNREF:{ *:[externref] }:$rhs, I32:{ *:[i32] }:$cond) |
| 21822 | /* 43832*/ /*Scope*/ 16, /*->43849*/ |
| 21823 | /* 43833*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 21824 | /* 43835*/ OPC_MoveParent, |
| 21825 | /* 43836*/ OPC_RecordChild1, // #1 = $lhs |
| 21826 | /* 43837*/ OPC_RecordChild2, // #2 = $rhs |
| 21827 | /* 43838*/ OPC_CheckType, MVT::externref, |
| 21828 | /* 43840*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_EXTERNREF), 0, |
| 21829 | MVT::externref, 3/*#Ops*/, 2, 1, 0, |
| 21830 | // Src: (select:{ *:[externref] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), EXTERNREF:{ *:[externref] }:$lhs, EXTERNREF:{ *:[externref] }:$rhs) - Complexity = 11 |
| 21831 | // Dst: (SELECT_EXTERNREF:{ *:[externref] } EXTERNREF:{ *:[externref] }:$rhs, EXTERNREF:{ *:[externref] }:$lhs, I32:{ *:[i32] }:$cond) |
| 21832 | /* 43849*/ 0, /*End of Scope*/ |
| 21833 | /* 43850*/ /*Scope*/ 55, /*->43906*/ |
| 21834 | /* 43851*/ OPC_RecordChild0, // #0 = $cond |
| 21835 | /* 43852*/ OPC_CheckChild0Type, MVT::i32, |
| 21836 | /* 43854*/ OPC_RecordChild1, // #1 = $lhs |
| 21837 | /* 43855*/ OPC_RecordChild2, // #2 = $rhs |
| 21838 | /* 43856*/ OPC_SwitchType /*4 cases */, 9, MVT::i32,// ->43868 |
| 21839 | /* 43859*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_I32), 0, |
| 21840 | MVT::i32, 3/*#Ops*/, 1, 2, 0, |
| 21841 | // Src: (select:{ *:[i32] } I32:{ *:[i32] }:$cond, I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 21842 | // Dst: (SELECT_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs, I32:{ *:[i32] }:$cond) |
| 21843 | /* 43868*/ /*SwitchType*/ 9, MVT::i64,// ->43879 |
| 21844 | /* 43870*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_I64), 0, |
| 21845 | MVT::i64, 3/*#Ops*/, 1, 2, 0, |
| 21846 | // Src: (select:{ *:[i64] } I32:{ *:[i32] }:$cond, I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 21847 | // Dst: (SELECT_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs, I32:{ *:[i32] }:$cond) |
| 21848 | /* 43879*/ /*SwitchType*/ 11, MVT::funcref,// ->43892 |
| 21849 | /* 43881*/ OPC_CheckPatternPredicate, 10, // (Subtarget->hasReferenceTypes()) |
| 21850 | /* 43883*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_FUNCREF), 0, |
| 21851 | MVT::funcref, 3/*#Ops*/, 1, 2, 0, |
| 21852 | // Src: (select:{ *:[funcref] } I32:{ *:[i32] }:$cond, FUNCREF:{ *:[funcref] }:$lhs, FUNCREF:{ *:[funcref] }:$rhs) - Complexity = 3 |
| 21853 | // Dst: (SELECT_FUNCREF:{ *:[funcref] } FUNCREF:{ *:[funcref] }:$lhs, FUNCREF:{ *:[funcref] }:$rhs, I32:{ *:[i32] }:$cond) |
| 21854 | /* 43892*/ /*SwitchType*/ 11, MVT::externref,// ->43905 |
| 21855 | /* 43894*/ OPC_CheckPatternPredicate, 10, // (Subtarget->hasReferenceTypes()) |
| 21856 | /* 43896*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_EXTERNREF), 0, |
| 21857 | MVT::externref, 3/*#Ops*/, 1, 2, 0, |
| 21858 | // Src: (select:{ *:[externref] } I32:{ *:[i32] }:$cond, EXTERNREF:{ *:[externref] }:$lhs, EXTERNREF:{ *:[externref] }:$rhs) - Complexity = 3 |
| 21859 | // Dst: (SELECT_EXTERNREF:{ *:[externref] } EXTERNREF:{ *:[externref] }:$lhs, EXTERNREF:{ *:[externref] }:$rhs, I32:{ *:[i32] }:$cond) |
| 21860 | /* 43905*/ 0, // EndSwitchType |
| 21861 | /* 43906*/ /*Scope*/ 73, /*->43980*/ |
| 21862 | /* 43907*/ OPC_MoveChild0, |
| 21863 | /* 43908*/ OPC_CheckOpcode, TARGET_VAL(ISD::SETCC), |
| 21864 | /* 43911*/ OPC_RecordChild0, // #0 = $cond |
| 21865 | /* 43912*/ OPC_CheckChild0Type, MVT::i32, |
| 21866 | /* 43914*/ OPC_CheckChild1Integer, 0, |
| 21867 | /* 43916*/ OPC_CheckType, MVT::i32, |
| 21868 | /* 43918*/ OPC_Scope, 29, /*->43949*/ // 2 children in Scope |
| 21869 | /* 43920*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 21870 | /* 43922*/ OPC_MoveParent, |
| 21871 | /* 43923*/ OPC_RecordChild1, // #1 = $lhs |
| 21872 | /* 43924*/ OPC_RecordChild2, // #2 = $rhs |
| 21873 | /* 43925*/ OPC_SwitchType /*2 cases */, 9, MVT::f32,// ->43937 |
| 21874 | /* 43928*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_F32), 0, |
| 21875 | MVT::f32, 3/*#Ops*/, 1, 2, 0, |
| 21876 | // Src: (select:{ *:[f32] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) - Complexity = 11 |
| 21877 | // Dst: (SELECT_F32:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs, I32:{ *:[i32] }:$cond) |
| 21878 | /* 43937*/ /*SwitchType*/ 9, MVT::f64,// ->43948 |
| 21879 | /* 43939*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_F64), 0, |
| 21880 | MVT::f64, 3/*#Ops*/, 1, 2, 0, |
| 21881 | // Src: (select:{ *:[f64] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) - Complexity = 11 |
| 21882 | // Dst: (SELECT_F64:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs, I32:{ *:[i32] }:$cond) |
| 21883 | /* 43948*/ 0, // EndSwitchType |
| 21884 | /* 43949*/ /*Scope*/ 29, /*->43979*/ |
| 21885 | /* 43950*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 21886 | /* 43952*/ OPC_MoveParent, |
| 21887 | /* 43953*/ OPC_RecordChild1, // #1 = $lhs |
| 21888 | /* 43954*/ OPC_RecordChild2, // #2 = $rhs |
| 21889 | /* 43955*/ OPC_SwitchType /*2 cases */, 9, MVT::f32,// ->43967 |
| 21890 | /* 43958*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_F32), 0, |
| 21891 | MVT::f32, 3/*#Ops*/, 2, 1, 0, |
| 21892 | // Src: (select:{ *:[f32] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) - Complexity = 11 |
| 21893 | // Dst: (SELECT_F32:{ *:[f32] } F32:{ *:[f32] }:$rhs, F32:{ *:[f32] }:$lhs, I32:{ *:[i32] }:$cond) |
| 21894 | /* 43967*/ /*SwitchType*/ 9, MVT::f64,// ->43978 |
| 21895 | /* 43969*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_F64), 0, |
| 21896 | MVT::f64, 3/*#Ops*/, 2, 1, 0, |
| 21897 | // Src: (select:{ *:[f64] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) - Complexity = 11 |
| 21898 | // Dst: (SELECT_F64:{ *:[f64] } F64:{ *:[f64] }:$rhs, F64:{ *:[f64] }:$lhs, I32:{ *:[i32] }:$cond) |
| 21899 | /* 43978*/ 0, // EndSwitchType |
| 21900 | /* 43979*/ 0, /*End of Scope*/ |
| 21901 | /* 43980*/ /*Scope*/ 29, /*->44010*/ |
| 21902 | /* 43981*/ OPC_RecordChild0, // #0 = $cond |
| 21903 | /* 43982*/ OPC_CheckChild0Type, MVT::i32, |
| 21904 | /* 43984*/ OPC_RecordChild1, // #1 = $lhs |
| 21905 | /* 43985*/ OPC_RecordChild2, // #2 = $rhs |
| 21906 | /* 43986*/ OPC_SwitchType /*2 cases */, 9, MVT::f32,// ->43998 |
| 21907 | /* 43989*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_F32), 0, |
| 21908 | MVT::f32, 3/*#Ops*/, 1, 2, 0, |
| 21909 | // Src: (select:{ *:[f32] } I32:{ *:[i32] }:$cond, F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) - Complexity = 3 |
| 21910 | // Dst: (SELECT_F32:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs, I32:{ *:[i32] }:$cond) |
| 21911 | /* 43998*/ /*SwitchType*/ 9, MVT::f64,// ->44009 |
| 21912 | /* 44000*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_F64), 0, |
| 21913 | MVT::f64, 3/*#Ops*/, 1, 2, 0, |
| 21914 | // Src: (select:{ *:[f64] } I32:{ *:[i32] }:$cond, F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) - Complexity = 3 |
| 21915 | // Dst: (SELECT_F64:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs, I32:{ *:[i32] }:$cond) |
| 21916 | /* 44009*/ 0, // EndSwitchType |
| 21917 | /* 44010*/ /*Scope*/ 21|128,1/*149*/, /*->44161*/ |
| 21918 | /* 44012*/ OPC_MoveChild0, |
| 21919 | /* 44013*/ OPC_CheckOpcode, TARGET_VAL(ISD::SETCC), |
| 21920 | /* 44016*/ OPC_RecordChild0, // #0 = $cond |
| 21921 | /* 44017*/ OPC_CheckChild0Type, MVT::i32, |
| 21922 | /* 44019*/ OPC_CheckChild1Integer, 0, |
| 21923 | /* 44021*/ OPC_CheckType, MVT::i32, |
| 21924 | /* 44023*/ OPC_Scope, 16, /*->44041*/ // 8 children in Scope |
| 21925 | /* 44025*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 21926 | /* 44027*/ OPC_MoveParent, |
| 21927 | /* 44028*/ OPC_RecordChild1, // #1 = $lhs |
| 21928 | /* 44029*/ OPC_RecordChild2, // #2 = $rhs |
| 21929 | /* 44030*/ OPC_CheckType, MVT::v16i8, |
| 21930 | /* 44032*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 21931 | MVT::v16i8, 3/*#Ops*/, 1, 2, 0, |
| 21932 | // Src: (select:{ *:[v16i8] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 11 |
| 21933 | // Dst: (SELECT_V128:{ *:[v16i8] } ?:{ *:[v16i8] }:$lhs, ?:{ *:[v16i8] }:$rhs, ?:{ *:[i32] }:$cond) |
| 21934 | /* 44041*/ /*Scope*/ 16, /*->44058*/ |
| 21935 | /* 44042*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 21936 | /* 44044*/ OPC_MoveParent, |
| 21937 | /* 44045*/ OPC_RecordChild1, // #1 = $lhs |
| 21938 | /* 44046*/ OPC_RecordChild2, // #2 = $rhs |
| 21939 | /* 44047*/ OPC_CheckType, MVT::v16i8, |
| 21940 | /* 44049*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 21941 | MVT::v16i8, 3/*#Ops*/, 2, 1, 0, |
| 21942 | // Src: (select:{ *:[v16i8] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 11 |
| 21943 | // Dst: (SELECT_V128:{ *:[v16i8] } ?:{ *:[v16i8] }:$rhs, ?:{ *:[v16i8] }:$lhs, ?:{ *:[i32] }:$cond) |
| 21944 | /* 44058*/ /*Scope*/ 16, /*->44075*/ |
| 21945 | /* 44059*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 21946 | /* 44061*/ OPC_MoveParent, |
| 21947 | /* 44062*/ OPC_RecordChild1, // #1 = $lhs |
| 21948 | /* 44063*/ OPC_RecordChild2, // #2 = $rhs |
| 21949 | /* 44064*/ OPC_CheckType, MVT::v8i16, |
| 21950 | /* 44066*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 21951 | MVT::v8i16, 3/*#Ops*/, 1, 2, 0, |
| 21952 | // Src: (select:{ *:[v8i16] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 11 |
| 21953 | // Dst: (SELECT_V128:{ *:[v8i16] } ?:{ *:[v8i16] }:$lhs, ?:{ *:[v8i16] }:$rhs, ?:{ *:[i32] }:$cond) |
| 21954 | /* 44075*/ /*Scope*/ 16, /*->44092*/ |
| 21955 | /* 44076*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 21956 | /* 44078*/ OPC_MoveParent, |
| 21957 | /* 44079*/ OPC_RecordChild1, // #1 = $lhs |
| 21958 | /* 44080*/ OPC_RecordChild2, // #2 = $rhs |
| 21959 | /* 44081*/ OPC_CheckType, MVT::v8i16, |
| 21960 | /* 44083*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 21961 | MVT::v8i16, 3/*#Ops*/, 2, 1, 0, |
| 21962 | // Src: (select:{ *:[v8i16] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 11 |
| 21963 | // Dst: (SELECT_V128:{ *:[v8i16] } ?:{ *:[v8i16] }:$rhs, ?:{ *:[v8i16] }:$lhs, ?:{ *:[i32] }:$cond) |
| 21964 | /* 44092*/ /*Scope*/ 16, /*->44109*/ |
| 21965 | /* 44093*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 21966 | /* 44095*/ OPC_MoveParent, |
| 21967 | /* 44096*/ OPC_RecordChild1, // #1 = $lhs |
| 21968 | /* 44097*/ OPC_RecordChild2, // #2 = $rhs |
| 21969 | /* 44098*/ OPC_CheckType, MVT::v4i32, |
| 21970 | /* 44100*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 21971 | MVT::v4i32, 3/*#Ops*/, 1, 2, 0, |
| 21972 | // Src: (select:{ *:[v4i32] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 11 |
| 21973 | // Dst: (SELECT_V128:{ *:[v4i32] } ?:{ *:[v4i32] }:$lhs, ?:{ *:[v4i32] }:$rhs, ?:{ *:[i32] }:$cond) |
| 21974 | /* 44109*/ /*Scope*/ 16, /*->44126*/ |
| 21975 | /* 44110*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 21976 | /* 44112*/ OPC_MoveParent, |
| 21977 | /* 44113*/ OPC_RecordChild1, // #1 = $lhs |
| 21978 | /* 44114*/ OPC_RecordChild2, // #2 = $rhs |
| 21979 | /* 44115*/ OPC_CheckType, MVT::v4i32, |
| 21980 | /* 44117*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 21981 | MVT::v4i32, 3/*#Ops*/, 2, 1, 0, |
| 21982 | // Src: (select:{ *:[v4i32] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 11 |
| 21983 | // Dst: (SELECT_V128:{ *:[v4i32] } ?:{ *:[v4i32] }:$rhs, ?:{ *:[v4i32] }:$lhs, ?:{ *:[i32] }:$cond) |
| 21984 | /* 44126*/ /*Scope*/ 16, /*->44143*/ |
| 21985 | /* 44127*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 21986 | /* 44129*/ OPC_MoveParent, |
| 21987 | /* 44130*/ OPC_RecordChild1, // #1 = $lhs |
| 21988 | /* 44131*/ OPC_RecordChild2, // #2 = $rhs |
| 21989 | /* 44132*/ OPC_CheckType, MVT::v2i64, |
| 21990 | /* 44134*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 21991 | MVT::v2i64, 3/*#Ops*/, 1, 2, 0, |
| 21992 | // Src: (select:{ *:[v2i64] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) - Complexity = 11 |
| 21993 | // Dst: (SELECT_V128:{ *:[v2i64] } ?:{ *:[v2i64] }:$lhs, ?:{ *:[v2i64] }:$rhs, ?:{ *:[i32] }:$cond) |
| 21994 | /* 44143*/ /*Scope*/ 16, /*->44160*/ |
| 21995 | /* 44144*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 21996 | /* 44146*/ OPC_MoveParent, |
| 21997 | /* 44147*/ OPC_RecordChild1, // #1 = $lhs |
| 21998 | /* 44148*/ OPC_RecordChild2, // #2 = $rhs |
| 21999 | /* 44149*/ OPC_CheckType, MVT::v2i64, |
| 22000 | /* 44151*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 22001 | MVT::v2i64, 3/*#Ops*/, 2, 1, 0, |
| 22002 | // Src: (select:{ *:[v2i64] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) - Complexity = 11 |
| 22003 | // Dst: (SELECT_V128:{ *:[v2i64] } ?:{ *:[v2i64] }:$rhs, ?:{ *:[v2i64] }:$lhs, ?:{ *:[i32] }:$cond) |
| 22004 | /* 44160*/ 0, /*End of Scope*/ |
| 22005 | /* 44161*/ /*Scope*/ 51, /*->44213*/ |
| 22006 | /* 44162*/ OPC_RecordChild0, // #0 = $cond |
| 22007 | /* 44163*/ OPC_CheckChild0Type, MVT::i32, |
| 22008 | /* 44165*/ OPC_RecordChild1, // #1 = $lhs |
| 22009 | /* 44166*/ OPC_RecordChild2, // #2 = $rhs |
| 22010 | /* 44167*/ OPC_SwitchType /*4 cases */, 9, MVT::v16i8,// ->44179 |
| 22011 | /* 44170*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 22012 | MVT::v16i8, 3/*#Ops*/, 1, 2, 0, |
| 22013 | // Src: (select:{ *:[v16i8] } I32:{ *:[i32] }:$cond, V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 3 |
| 22014 | // Dst: (SELECT_V128:{ *:[v16i8] } ?:{ *:[v16i8] }:$lhs, ?:{ *:[v16i8] }:$rhs, ?:{ *:[i32] }:$cond) |
| 22015 | /* 44179*/ /*SwitchType*/ 9, MVT::v8i16,// ->44190 |
| 22016 | /* 44181*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 22017 | MVT::v8i16, 3/*#Ops*/, 1, 2, 0, |
| 22018 | // Src: (select:{ *:[v8i16] } I32:{ *:[i32] }:$cond, V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 22019 | // Dst: (SELECT_V128:{ *:[v8i16] } ?:{ *:[v8i16] }:$lhs, ?:{ *:[v8i16] }:$rhs, ?:{ *:[i32] }:$cond) |
| 22020 | /* 44190*/ /*SwitchType*/ 9, MVT::v4i32,// ->44201 |
| 22021 | /* 44192*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 22022 | MVT::v4i32, 3/*#Ops*/, 1, 2, 0, |
| 22023 | // Src: (select:{ *:[v4i32] } I32:{ *:[i32] }:$cond, V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 3 |
| 22024 | // Dst: (SELECT_V128:{ *:[v4i32] } ?:{ *:[v4i32] }:$lhs, ?:{ *:[v4i32] }:$rhs, ?:{ *:[i32] }:$cond) |
| 22025 | /* 44201*/ /*SwitchType*/ 9, MVT::v2i64,// ->44212 |
| 22026 | /* 44203*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 22027 | MVT::v2i64, 3/*#Ops*/, 1, 2, 0, |
| 22028 | // Src: (select:{ *:[v2i64] } I32:{ *:[i32] }:$cond, V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) - Complexity = 3 |
| 22029 | // Dst: (SELECT_V128:{ *:[v2i64] } ?:{ *:[v2i64] }:$lhs, ?:{ *:[v2i64] }:$rhs, ?:{ *:[i32] }:$cond) |
| 22030 | /* 44212*/ 0, // EndSwitchType |
| 22031 | /* 44213*/ /*Scope*/ 81, /*->44295*/ |
| 22032 | /* 44214*/ OPC_MoveChild0, |
| 22033 | /* 44215*/ OPC_CheckOpcode, TARGET_VAL(ISD::SETCC), |
| 22034 | /* 44218*/ OPC_RecordChild0, // #0 = $cond |
| 22035 | /* 44219*/ OPC_CheckChild0Type, MVT::i32, |
| 22036 | /* 44221*/ OPC_CheckChild1Integer, 0, |
| 22037 | /* 44223*/ OPC_CheckType, MVT::i32, |
| 22038 | /* 44225*/ OPC_Scope, 16, /*->44243*/ // 4 children in Scope |
| 22039 | /* 44227*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 22040 | /* 44229*/ OPC_MoveParent, |
| 22041 | /* 44230*/ OPC_RecordChild1, // #1 = $lhs |
| 22042 | /* 44231*/ OPC_RecordChild2, // #2 = $rhs |
| 22043 | /* 44232*/ OPC_CheckType, MVT::v4f32, |
| 22044 | /* 44234*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 22045 | MVT::v4f32, 3/*#Ops*/, 1, 2, 0, |
| 22046 | // Src: (select:{ *:[v4f32] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) - Complexity = 11 |
| 22047 | // Dst: (SELECT_V128:{ *:[v4f32] } ?:{ *:[v4f32] }:$lhs, ?:{ *:[v4f32] }:$rhs, ?:{ *:[i32] }:$cond) |
| 22048 | /* 44243*/ /*Scope*/ 16, /*->44260*/ |
| 22049 | /* 44244*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 22050 | /* 44246*/ OPC_MoveParent, |
| 22051 | /* 44247*/ OPC_RecordChild1, // #1 = $lhs |
| 22052 | /* 44248*/ OPC_RecordChild2, // #2 = $rhs |
| 22053 | /* 44249*/ OPC_CheckType, MVT::v4f32, |
| 22054 | /* 44251*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 22055 | MVT::v4f32, 3/*#Ops*/, 2, 1, 0, |
| 22056 | // Src: (select:{ *:[v4f32] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) - Complexity = 11 |
| 22057 | // Dst: (SELECT_V128:{ *:[v4f32] } ?:{ *:[v4f32] }:$rhs, ?:{ *:[v4f32] }:$lhs, ?:{ *:[i32] }:$cond) |
| 22058 | /* 44260*/ /*Scope*/ 16, /*->44277*/ |
| 22059 | /* 44261*/ OPC_CheckChild2CondCode, ISD::SETNE, |
| 22060 | /* 44263*/ OPC_MoveParent, |
| 22061 | /* 44264*/ OPC_RecordChild1, // #1 = $lhs |
| 22062 | /* 44265*/ OPC_RecordChild2, // #2 = $rhs |
| 22063 | /* 44266*/ OPC_CheckType, MVT::v2f64, |
| 22064 | /* 44268*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 22065 | MVT::v2f64, 3/*#Ops*/, 1, 2, 0, |
| 22066 | // Src: (select:{ *:[v2f64] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETNE:{ *:[Other] }), V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) - Complexity = 11 |
| 22067 | // Dst: (SELECT_V128:{ *:[v2f64] } ?:{ *:[v2f64] }:$lhs, ?:{ *:[v2f64] }:$rhs, ?:{ *:[i32] }:$cond) |
| 22068 | /* 44277*/ /*Scope*/ 16, /*->44294*/ |
| 22069 | /* 44278*/ OPC_CheckChild2CondCode, ISD::SETEQ, |
| 22070 | /* 44280*/ OPC_MoveParent, |
| 22071 | /* 44281*/ OPC_RecordChild1, // #1 = $lhs |
| 22072 | /* 44282*/ OPC_RecordChild2, // #2 = $rhs |
| 22073 | /* 44283*/ OPC_CheckType, MVT::v2f64, |
| 22074 | /* 44285*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 22075 | MVT::v2f64, 3/*#Ops*/, 2, 1, 0, |
| 22076 | // Src: (select:{ *:[v2f64] } (setcc:{ *:[i32] } I32:{ *:[i32] }:$cond, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) - Complexity = 11 |
| 22077 | // Dst: (SELECT_V128:{ *:[v2f64] } ?:{ *:[v2f64] }:$rhs, ?:{ *:[v2f64] }:$lhs, ?:{ *:[i32] }:$cond) |
| 22078 | /* 44294*/ 0, /*End of Scope*/ |
| 22079 | /* 44295*/ /*Scope*/ 29, /*->44325*/ |
| 22080 | /* 44296*/ OPC_RecordChild0, // #0 = $cond |
| 22081 | /* 44297*/ OPC_CheckChild0Type, MVT::i32, |
| 22082 | /* 44299*/ OPC_RecordChild1, // #1 = $lhs |
| 22083 | /* 44300*/ OPC_RecordChild2, // #2 = $rhs |
| 22084 | /* 44301*/ OPC_SwitchType /*2 cases */, 9, MVT::v4f32,// ->44313 |
| 22085 | /* 44304*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 22086 | MVT::v4f32, 3/*#Ops*/, 1, 2, 0, |
| 22087 | // Src: (select:{ *:[v4f32] } I32:{ *:[i32] }:$cond, V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) - Complexity = 3 |
| 22088 | // Dst: (SELECT_V128:{ *:[v4f32] } ?:{ *:[v4f32] }:$lhs, ?:{ *:[v4f32] }:$rhs, ?:{ *:[i32] }:$cond) |
| 22089 | /* 44313*/ /*SwitchType*/ 9, MVT::v2f64,// ->44324 |
| 22090 | /* 44315*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SELECT_V128), 0, |
| 22091 | MVT::v2f64, 3/*#Ops*/, 1, 2, 0, |
| 22092 | // Src: (select:{ *:[v2f64] } I32:{ *:[i32] }:$cond, V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) - Complexity = 3 |
| 22093 | // Dst: (SELECT_V128:{ *:[v2f64] } ?:{ *:[v2f64] }:$lhs, ?:{ *:[v2f64] }:$rhs, ?:{ *:[i32] }:$cond) |
| 22094 | /* 44324*/ 0, // EndSwitchType |
| 22095 | /* 44325*/ 0, /*End of Scope*/ |
| 22096 | /* 44326*/ /*SwitchOpcode*/ 74|128,8/*1098*/, TARGET_VAL(ISD::ATOMIC_LOAD),// ->45428 |
| 22097 | /* 44330*/ OPC_RecordMemRef, |
| 22098 | /* 44331*/ OPC_RecordNode, // #0 = 'atomic_load' chained node |
| 22099 | /* 44332*/ OPC_Scope, 0|128,5/*640*/, /*->44975*/ // 2 children in Scope |
| 22100 | /* 44335*/ OPC_MoveChild1, |
| 22101 | /* 44336*/ OPC_SwitchOpcode /*3 cases */, 63|128,1/*191*/, TARGET_VAL(ISD::ADD),// ->44532 |
| 22102 | /* 44341*/ OPC_RecordChild0, // #1 = $addr |
| 22103 | /* 44342*/ OPC_RecordChild1, // #2 = $off |
| 22104 | /* 44343*/ OPC_MoveChild1, |
| 22105 | /* 44344*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 22106 | /* 44347*/ OPC_MoveParent, |
| 22107 | /* 44348*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 22108 | /* 44350*/ OPC_SwitchType /*2 cases */, 88, MVT::i32,// ->44441 |
| 22109 | /* 44353*/ OPC_MoveParent, |
| 22110 | /* 44354*/ OPC_SwitchType /*2 cases */, 62, MVT::i32,// ->44419 |
| 22111 | /* 44357*/ OPC_Scope, 19, /*->44378*/ // 3 children in Scope |
| 22112 | /* 44359*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_32 |
| 22113 | /* 44361*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22114 | /* 44363*/ OPC_EmitMergeInputChains1_0, |
| 22115 | /* 44364*/ OPC_EmitInteger, MVT::i32, 0, |
| 22116 | /* 44367*/ OPC_EmitConvertToTarget, 2, |
| 22117 | /* 44369*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22118 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 22119 | // Src: (atomic_load:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_32>> - Complexity = 11 |
| 22120 | // Dst: (ATOMIC_LOAD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 22121 | /* 44378*/ /*Scope*/ 19, /*->44398*/ |
| 22122 | /* 44379*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 22123 | /* 44381*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22124 | /* 44383*/ OPC_EmitMergeInputChains1_0, |
| 22125 | /* 44384*/ OPC_EmitInteger, MVT::i32, 0, |
| 22126 | /* 44387*/ OPC_EmitConvertToTarget, 2, |
| 22127 | /* 44389*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22128 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 22129 | // Src: (atomic_load:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_8>> - Complexity = 11 |
| 22130 | // Dst: (ATOMIC_LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 22131 | /* 44398*/ /*Scope*/ 19, /*->44418*/ |
| 22132 | /* 44399*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 22133 | /* 44401*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22134 | /* 44403*/ OPC_EmitMergeInputChains1_0, |
| 22135 | /* 44404*/ OPC_EmitInteger, MVT::i32, 0, |
| 22136 | /* 44407*/ OPC_EmitConvertToTarget, 2, |
| 22137 | /* 44409*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22138 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 22139 | // Src: (atomic_load:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_16>> - Complexity = 11 |
| 22140 | // Dst: (ATOMIC_LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 22141 | /* 44418*/ 0, /*End of Scope*/ |
| 22142 | /* 44419*/ /*SwitchType*/ 19, MVT::i64,// ->44440 |
| 22143 | /* 44421*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_64 |
| 22144 | /* 44423*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22145 | /* 44425*/ OPC_EmitMergeInputChains1_0, |
| 22146 | /* 44426*/ OPC_EmitInteger, MVT::i32, 0, |
| 22147 | /* 44429*/ OPC_EmitConvertToTarget, 2, |
| 22148 | /* 44431*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22149 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 22150 | // Src: (atomic_load:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_64>> - Complexity = 11 |
| 22151 | // Dst: (ATOMIC_LOAD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 22152 | /* 44440*/ 0, // EndSwitchType |
| 22153 | /* 44441*/ /*SwitchType*/ 88, MVT::i64,// ->44531 |
| 22154 | /* 44443*/ OPC_MoveParent, |
| 22155 | /* 44444*/ OPC_SwitchType /*2 cases */, 62, MVT::i32,// ->44509 |
| 22156 | /* 44447*/ OPC_Scope, 19, /*->44468*/ // 3 children in Scope |
| 22157 | /* 44449*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_32 |
| 22158 | /* 44451*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22159 | /* 44453*/ OPC_EmitMergeInputChains1_0, |
| 22160 | /* 44454*/ OPC_EmitInteger, MVT::i32, 0, |
| 22161 | /* 44457*/ OPC_EmitConvertToTarget, 2, |
| 22162 | /* 44459*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22163 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 22164 | // Src: (atomic_load:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_32>> - Complexity = 11 |
| 22165 | // Dst: (ATOMIC_LOAD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 22166 | /* 44468*/ /*Scope*/ 19, /*->44488*/ |
| 22167 | /* 44469*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 22168 | /* 44471*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22169 | /* 44473*/ OPC_EmitMergeInputChains1_0, |
| 22170 | /* 44474*/ OPC_EmitInteger, MVT::i32, 0, |
| 22171 | /* 44477*/ OPC_EmitConvertToTarget, 2, |
| 22172 | /* 44479*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22173 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 22174 | // Src: (atomic_load:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_8>> - Complexity = 11 |
| 22175 | // Dst: (ATOMIC_LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 22176 | /* 44488*/ /*Scope*/ 19, /*->44508*/ |
| 22177 | /* 44489*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 22178 | /* 44491*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22179 | /* 44493*/ OPC_EmitMergeInputChains1_0, |
| 22180 | /* 44494*/ OPC_EmitInteger, MVT::i32, 0, |
| 22181 | /* 44497*/ OPC_EmitConvertToTarget, 2, |
| 22182 | /* 44499*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22183 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 22184 | // Src: (atomic_load:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_16>> - Complexity = 11 |
| 22185 | // Dst: (ATOMIC_LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 22186 | /* 44508*/ 0, /*End of Scope*/ |
| 22187 | /* 44509*/ /*SwitchType*/ 19, MVT::i64,// ->44530 |
| 22188 | /* 44511*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_64 |
| 22189 | /* 44513*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22190 | /* 44515*/ OPC_EmitMergeInputChains1_0, |
| 22191 | /* 44516*/ OPC_EmitInteger, MVT::i32, 0, |
| 22192 | /* 44519*/ OPC_EmitConvertToTarget, 2, |
| 22193 | /* 44521*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22194 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 22195 | // Src: (atomic_load:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>)<<P:Predicate_atomic_load_64>> - Complexity = 11 |
| 22196 | // Dst: (ATOMIC_LOAD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 22197 | /* 44530*/ 0, // EndSwitchType |
| 22198 | /* 44531*/ 0, // EndSwitchType |
| 22199 | /* 44532*/ /*SwitchOpcode*/ 63|128,1/*191*/, TARGET_VAL(ISD::OR),// ->44727 |
| 22200 | /* 44536*/ OPC_RecordChild0, // #1 = $addr |
| 22201 | /* 44537*/ OPC_RecordChild1, // #2 = $off |
| 22202 | /* 44538*/ OPC_MoveChild1, |
| 22203 | /* 44539*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 22204 | /* 44542*/ OPC_MoveParent, |
| 22205 | /* 44543*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 22206 | /* 44545*/ OPC_SwitchType /*2 cases */, 88, MVT::i32,// ->44636 |
| 22207 | /* 44548*/ OPC_MoveParent, |
| 22208 | /* 44549*/ OPC_SwitchType /*2 cases */, 62, MVT::i32,// ->44614 |
| 22209 | /* 44552*/ OPC_Scope, 19, /*->44573*/ // 3 children in Scope |
| 22210 | /* 44554*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_32 |
| 22211 | /* 44556*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22212 | /* 44558*/ OPC_EmitMergeInputChains1_0, |
| 22213 | /* 44559*/ OPC_EmitInteger, MVT::i32, 0, |
| 22214 | /* 44562*/ OPC_EmitConvertToTarget, 2, |
| 22215 | /* 44564*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22216 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 22217 | // Src: (atomic_load:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_32>> - Complexity = 11 |
| 22218 | // Dst: (ATOMIC_LOAD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 22219 | /* 44573*/ /*Scope*/ 19, /*->44593*/ |
| 22220 | /* 44574*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 22221 | /* 44576*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22222 | /* 44578*/ OPC_EmitMergeInputChains1_0, |
| 22223 | /* 44579*/ OPC_EmitInteger, MVT::i32, 0, |
| 22224 | /* 44582*/ OPC_EmitConvertToTarget, 2, |
| 22225 | /* 44584*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22226 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 22227 | // Src: (atomic_load:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_8>> - Complexity = 11 |
| 22228 | // Dst: (ATOMIC_LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 22229 | /* 44593*/ /*Scope*/ 19, /*->44613*/ |
| 22230 | /* 44594*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 22231 | /* 44596*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22232 | /* 44598*/ OPC_EmitMergeInputChains1_0, |
| 22233 | /* 44599*/ OPC_EmitInteger, MVT::i32, 0, |
| 22234 | /* 44602*/ OPC_EmitConvertToTarget, 2, |
| 22235 | /* 44604*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22236 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 22237 | // Src: (atomic_load:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_16>> - Complexity = 11 |
| 22238 | // Dst: (ATOMIC_LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 22239 | /* 44613*/ 0, /*End of Scope*/ |
| 22240 | /* 44614*/ /*SwitchType*/ 19, MVT::i64,// ->44635 |
| 22241 | /* 44616*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_64 |
| 22242 | /* 44618*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22243 | /* 44620*/ OPC_EmitMergeInputChains1_0, |
| 22244 | /* 44621*/ OPC_EmitInteger, MVT::i32, 0, |
| 22245 | /* 44624*/ OPC_EmitConvertToTarget, 2, |
| 22246 | /* 44626*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22247 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 22248 | // Src: (atomic_load:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_64>> - Complexity = 11 |
| 22249 | // Dst: (ATOMIC_LOAD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 22250 | /* 44635*/ 0, // EndSwitchType |
| 22251 | /* 44636*/ /*SwitchType*/ 88, MVT::i64,// ->44726 |
| 22252 | /* 44638*/ OPC_MoveParent, |
| 22253 | /* 44639*/ OPC_SwitchType /*2 cases */, 62, MVT::i32,// ->44704 |
| 22254 | /* 44642*/ OPC_Scope, 19, /*->44663*/ // 3 children in Scope |
| 22255 | /* 44644*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_32 |
| 22256 | /* 44646*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22257 | /* 44648*/ OPC_EmitMergeInputChains1_0, |
| 22258 | /* 44649*/ OPC_EmitInteger, MVT::i32, 0, |
| 22259 | /* 44652*/ OPC_EmitConvertToTarget, 2, |
| 22260 | /* 44654*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22261 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 22262 | // Src: (atomic_load:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_32>> - Complexity = 11 |
| 22263 | // Dst: (ATOMIC_LOAD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 22264 | /* 44663*/ /*Scope*/ 19, /*->44683*/ |
| 22265 | /* 44664*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 22266 | /* 44666*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22267 | /* 44668*/ OPC_EmitMergeInputChains1_0, |
| 22268 | /* 44669*/ OPC_EmitInteger, MVT::i32, 0, |
| 22269 | /* 44672*/ OPC_EmitConvertToTarget, 2, |
| 22270 | /* 44674*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22271 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 22272 | // Src: (atomic_load:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_8>> - Complexity = 11 |
| 22273 | // Dst: (ATOMIC_LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 22274 | /* 44683*/ /*Scope*/ 19, /*->44703*/ |
| 22275 | /* 44684*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 22276 | /* 44686*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22277 | /* 44688*/ OPC_EmitMergeInputChains1_0, |
| 22278 | /* 44689*/ OPC_EmitInteger, MVT::i32, 0, |
| 22279 | /* 44692*/ OPC_EmitConvertToTarget, 2, |
| 22280 | /* 44694*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22281 | MVT::i32, 3/*#Ops*/, 3, 4, 1, |
| 22282 | // Src: (atomic_load:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_16>> - Complexity = 11 |
| 22283 | // Dst: (ATOMIC_LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 22284 | /* 44703*/ 0, /*End of Scope*/ |
| 22285 | /* 44704*/ /*SwitchType*/ 19, MVT::i64,// ->44725 |
| 22286 | /* 44706*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_64 |
| 22287 | /* 44708*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22288 | /* 44710*/ OPC_EmitMergeInputChains1_0, |
| 22289 | /* 44711*/ OPC_EmitInteger, MVT::i32, 0, |
| 22290 | /* 44714*/ OPC_EmitConvertToTarget, 2, |
| 22291 | /* 44716*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22292 | MVT::i64, 3/*#Ops*/, 3, 4, 1, |
| 22293 | // Src: (atomic_load:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>)<<P:Predicate_atomic_load_64>> - Complexity = 11 |
| 22294 | // Dst: (ATOMIC_LOAD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 22295 | /* 44725*/ 0, // EndSwitchType |
| 22296 | /* 44726*/ 0, // EndSwitchType |
| 22297 | /* 44727*/ /*SwitchOpcode*/ 115|128,1/*243*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->44974 |
| 22298 | /* 44731*/ OPC_RecordChild0, // #1 = $off |
| 22299 | /* 44732*/ OPC_MoveChild0, |
| 22300 | /* 44733*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 22301 | /* 44736*/ OPC_MoveParent, |
| 22302 | /* 44737*/ OPC_MoveParent, |
| 22303 | /* 44738*/ OPC_SwitchType /*2 cases */, 45|128,1/*173*/, MVT::i32,// ->44915 |
| 22304 | /* 44742*/ OPC_Scope, 56, /*->44800*/ // 3 children in Scope |
| 22305 | /* 44744*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_32 |
| 22306 | /* 44746*/ OPC_Scope, 25, /*->44773*/ // 2 children in Scope |
| 22307 | /* 44748*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 22308 | /* 44750*/ OPC_EmitMergeInputChains1_0, |
| 22309 | /* 44751*/ OPC_EmitInteger, MVT::i32, 0, |
| 22310 | /* 44754*/ OPC_EmitInteger, MVT::i32, 0, |
| 22311 | /* 44757*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22312 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 22313 | /* 44764*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22314 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 22315 | // Src: (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_32>> - Complexity = 10 |
| 22316 | // Dst: (ATOMIC_LOAD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 22317 | /* 44773*/ /*Scope*/ 25, /*->44799*/ |
| 22318 | /* 44774*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 22319 | /* 44776*/ OPC_EmitMergeInputChains1_0, |
| 22320 | /* 44777*/ OPC_EmitInteger, MVT::i32, 0, |
| 22321 | /* 44780*/ OPC_EmitInteger, MVT::i64, 0, |
| 22322 | /* 44783*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22323 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 22324 | /* 44790*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22325 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 22326 | // Src: (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_32>> - Complexity = 10 |
| 22327 | // Dst: (ATOMIC_LOAD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 22328 | /* 44799*/ 0, /*End of Scope*/ |
| 22329 | /* 44800*/ /*Scope*/ 56, /*->44857*/ |
| 22330 | /* 44801*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 22331 | /* 44803*/ OPC_Scope, 25, /*->44830*/ // 2 children in Scope |
| 22332 | /* 44805*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 22333 | /* 44807*/ OPC_EmitMergeInputChains1_0, |
| 22334 | /* 44808*/ OPC_EmitInteger, MVT::i32, 0, |
| 22335 | /* 44811*/ OPC_EmitInteger, MVT::i32, 0, |
| 22336 | /* 44814*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22337 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 22338 | /* 44821*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22339 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 22340 | // Src: (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_8>> - Complexity = 10 |
| 22341 | // Dst: (ATOMIC_LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 22342 | /* 44830*/ /*Scope*/ 25, /*->44856*/ |
| 22343 | /* 44831*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 22344 | /* 44833*/ OPC_EmitMergeInputChains1_0, |
| 22345 | /* 44834*/ OPC_EmitInteger, MVT::i32, 0, |
| 22346 | /* 44837*/ OPC_EmitInteger, MVT::i64, 0, |
| 22347 | /* 44840*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22348 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 22349 | /* 44847*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22350 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 22351 | // Src: (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_8>> - Complexity = 10 |
| 22352 | // Dst: (ATOMIC_LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 22353 | /* 44856*/ 0, /*End of Scope*/ |
| 22354 | /* 44857*/ /*Scope*/ 56, /*->44914*/ |
| 22355 | /* 44858*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 22356 | /* 44860*/ OPC_Scope, 25, /*->44887*/ // 2 children in Scope |
| 22357 | /* 44862*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 22358 | /* 44864*/ OPC_EmitMergeInputChains1_0, |
| 22359 | /* 44865*/ OPC_EmitInteger, MVT::i32, 0, |
| 22360 | /* 44868*/ OPC_EmitInteger, MVT::i32, 0, |
| 22361 | /* 44871*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22362 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 22363 | /* 44878*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22364 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 22365 | // Src: (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_16>> - Complexity = 10 |
| 22366 | // Dst: (ATOMIC_LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 22367 | /* 44887*/ /*Scope*/ 25, /*->44913*/ |
| 22368 | /* 44888*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 22369 | /* 44890*/ OPC_EmitMergeInputChains1_0, |
| 22370 | /* 44891*/ OPC_EmitInteger, MVT::i32, 0, |
| 22371 | /* 44894*/ OPC_EmitInteger, MVT::i64, 0, |
| 22372 | /* 44897*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22373 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 22374 | /* 44904*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22375 | MVT::i32, 3/*#Ops*/, 2, 1, 4, |
| 22376 | // Src: (atomic_load:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_16>> - Complexity = 10 |
| 22377 | // Dst: (ATOMIC_LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 22378 | /* 44913*/ 0, /*End of Scope*/ |
| 22379 | /* 44914*/ 0, /*End of Scope*/ |
| 22380 | /* 44915*/ /*SwitchType*/ 56, MVT::i64,// ->44973 |
| 22381 | /* 44917*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_64 |
| 22382 | /* 44919*/ OPC_Scope, 25, /*->44946*/ // 2 children in Scope |
| 22383 | /* 44921*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 22384 | /* 44923*/ OPC_EmitMergeInputChains1_0, |
| 22385 | /* 44924*/ OPC_EmitInteger, MVT::i32, 0, |
| 22386 | /* 44927*/ OPC_EmitInteger, MVT::i32, 0, |
| 22387 | /* 44930*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22388 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 22389 | /* 44937*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22390 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 22391 | // Src: (atomic_load:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_64>> - Complexity = 10 |
| 22392 | // Dst: (ATOMIC_LOAD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 22393 | /* 44946*/ /*Scope*/ 25, /*->44972*/ |
| 22394 | /* 44947*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 22395 | /* 44949*/ OPC_EmitMergeInputChains1_0, |
| 22396 | /* 44950*/ OPC_EmitInteger, MVT::i32, 0, |
| 22397 | /* 44953*/ OPC_EmitInteger, MVT::i64, 0, |
| 22398 | /* 44956*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22399 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 22400 | /* 44963*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22401 | MVT::i64, 3/*#Ops*/, 2, 1, 4, |
| 22402 | // Src: (atomic_load:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off))<<P:Predicate_atomic_load_64>> - Complexity = 10 |
| 22403 | // Dst: (ATOMIC_LOAD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 22404 | /* 44972*/ 0, /*End of Scope*/ |
| 22405 | /* 44973*/ 0, // EndSwitchType |
| 22406 | /* 44974*/ 0, // EndSwitchOpcode |
| 22407 | /* 44975*/ /*Scope*/ 66|128,3/*450*/, /*->45427*/ |
| 22408 | /* 44977*/ OPC_RecordChild1, // #1 = $off |
| 22409 | /* 44978*/ OPC_Scope, 1|128,2/*257*/, /*->45238*/ // 3 children in Scope |
| 22410 | /* 44981*/ OPC_MoveChild1, |
| 22411 | /* 44982*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 22412 | /* 44985*/ OPC_MoveParent, |
| 22413 | /* 44986*/ OPC_SwitchType /*2 cases */, 57|128,1/*185*/, MVT::i32,// ->45175 |
| 22414 | /* 44990*/ OPC_Scope, 60, /*->45052*/ // 3 children in Scope |
| 22415 | /* 44992*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_32 |
| 22416 | /* 44994*/ OPC_Scope, 27, /*->45023*/ // 2 children in Scope |
| 22417 | /* 44996*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22418 | /* 44998*/ OPC_EmitMergeInputChains1_0, |
| 22419 | /* 44999*/ OPC_EmitInteger, MVT::i32, 0, |
| 22420 | /* 45002*/ OPC_EmitConvertToTarget, 1, |
| 22421 | /* 45004*/ OPC_EmitInteger, MVT::i32, 0, |
| 22422 | /* 45007*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22423 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 22424 | /* 45014*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22425 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 22426 | // Src: (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_32>> - Complexity = 7 |
| 22427 | // Dst: (ATOMIC_LOAD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 22428 | /* 45023*/ /*Scope*/ 27, /*->45051*/ |
| 22429 | /* 45024*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22430 | /* 45026*/ OPC_EmitMergeInputChains1_0, |
| 22431 | /* 45027*/ OPC_EmitInteger, MVT::i32, 0, |
| 22432 | /* 45030*/ OPC_EmitConvertToTarget, 1, |
| 22433 | /* 45032*/ OPC_EmitInteger, MVT::i64, 0, |
| 22434 | /* 45035*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22435 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 22436 | /* 45042*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22437 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 22438 | // Src: (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_32>> - Complexity = 7 |
| 22439 | // Dst: (ATOMIC_LOAD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 22440 | /* 45051*/ 0, /*End of Scope*/ |
| 22441 | /* 45052*/ /*Scope*/ 60, /*->45113*/ |
| 22442 | /* 45053*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 22443 | /* 45055*/ OPC_Scope, 27, /*->45084*/ // 2 children in Scope |
| 22444 | /* 45057*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22445 | /* 45059*/ OPC_EmitMergeInputChains1_0, |
| 22446 | /* 45060*/ OPC_EmitInteger, MVT::i32, 0, |
| 22447 | /* 45063*/ OPC_EmitConvertToTarget, 1, |
| 22448 | /* 45065*/ OPC_EmitInteger, MVT::i32, 0, |
| 22449 | /* 45068*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22450 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 22451 | /* 45075*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22452 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 22453 | // Src: (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_8>> - Complexity = 7 |
| 22454 | // Dst: (ATOMIC_LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 22455 | /* 45084*/ /*Scope*/ 27, /*->45112*/ |
| 22456 | /* 45085*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22457 | /* 45087*/ OPC_EmitMergeInputChains1_0, |
| 22458 | /* 45088*/ OPC_EmitInteger, MVT::i32, 0, |
| 22459 | /* 45091*/ OPC_EmitConvertToTarget, 1, |
| 22460 | /* 45093*/ OPC_EmitInteger, MVT::i64, 0, |
| 22461 | /* 45096*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22462 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 22463 | /* 45103*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22464 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 22465 | // Src: (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_8>> - Complexity = 7 |
| 22466 | // Dst: (ATOMIC_LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 22467 | /* 45112*/ 0, /*End of Scope*/ |
| 22468 | /* 45113*/ /*Scope*/ 60, /*->45174*/ |
| 22469 | /* 45114*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 22470 | /* 45116*/ OPC_Scope, 27, /*->45145*/ // 2 children in Scope |
| 22471 | /* 45118*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22472 | /* 45120*/ OPC_EmitMergeInputChains1_0, |
| 22473 | /* 45121*/ OPC_EmitInteger, MVT::i32, 0, |
| 22474 | /* 45124*/ OPC_EmitConvertToTarget, 1, |
| 22475 | /* 45126*/ OPC_EmitInteger, MVT::i32, 0, |
| 22476 | /* 45129*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22477 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 22478 | /* 45136*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22479 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 22480 | // Src: (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_16>> - Complexity = 7 |
| 22481 | // Dst: (ATOMIC_LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 22482 | /* 45145*/ /*Scope*/ 27, /*->45173*/ |
| 22483 | /* 45146*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22484 | /* 45148*/ OPC_EmitMergeInputChains1_0, |
| 22485 | /* 45149*/ OPC_EmitInteger, MVT::i32, 0, |
| 22486 | /* 45152*/ OPC_EmitConvertToTarget, 1, |
| 22487 | /* 45154*/ OPC_EmitInteger, MVT::i64, 0, |
| 22488 | /* 45157*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22489 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 22490 | /* 45164*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22491 | MVT::i32, 3/*#Ops*/, 2, 3, 5, |
| 22492 | // Src: (atomic_load:{ *:[i32] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_16>> - Complexity = 7 |
| 22493 | // Dst: (ATOMIC_LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 22494 | /* 45173*/ 0, /*End of Scope*/ |
| 22495 | /* 45174*/ 0, /*End of Scope*/ |
| 22496 | /* 45175*/ /*SwitchType*/ 60, MVT::i64,// ->45237 |
| 22497 | /* 45177*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_64 |
| 22498 | /* 45179*/ OPC_Scope, 27, /*->45208*/ // 2 children in Scope |
| 22499 | /* 45181*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22500 | /* 45183*/ OPC_EmitMergeInputChains1_0, |
| 22501 | /* 45184*/ OPC_EmitInteger, MVT::i32, 0, |
| 22502 | /* 45187*/ OPC_EmitConvertToTarget, 1, |
| 22503 | /* 45189*/ OPC_EmitInteger, MVT::i32, 0, |
| 22504 | /* 45192*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22505 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 22506 | /* 45199*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22507 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 22508 | // Src: (atomic_load:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_64>> - Complexity = 7 |
| 22509 | // Dst: (ATOMIC_LOAD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 22510 | /* 45208*/ /*Scope*/ 27, /*->45236*/ |
| 22511 | /* 45209*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22512 | /* 45211*/ OPC_EmitMergeInputChains1_0, |
| 22513 | /* 45212*/ OPC_EmitInteger, MVT::i32, 0, |
| 22514 | /* 45215*/ OPC_EmitConvertToTarget, 1, |
| 22515 | /* 45217*/ OPC_EmitInteger, MVT::i64, 0, |
| 22516 | /* 45220*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22517 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 22518 | /* 45227*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22519 | MVT::i64, 3/*#Ops*/, 2, 3, 5, |
| 22520 | // Src: (atomic_load:{ *:[i64] } (imm:{ *:[iPTR] }):$off)<<P:Predicate_atomic_load_64>> - Complexity = 7 |
| 22521 | // Dst: (ATOMIC_LOAD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 22522 | /* 45236*/ 0, /*End of Scope*/ |
| 22523 | /* 45237*/ 0, // EndSwitchType |
| 22524 | /* 45238*/ /*Scope*/ 93, /*->45332*/ |
| 22525 | /* 45239*/ OPC_CheckChild1Type, MVT::i32, |
| 22526 | /* 45241*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->45309 |
| 22527 | /* 45244*/ OPC_Scope, 20, /*->45266*/ // 3 children in Scope |
| 22528 | /* 45246*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_32 |
| 22529 | /* 45248*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22530 | /* 45250*/ OPC_EmitMergeInputChains1_0, |
| 22531 | /* 45251*/ OPC_EmitInteger, MVT::i32, 0, |
| 22532 | /* 45254*/ OPC_EmitInteger, MVT::i32, 0, |
| 22533 | /* 45257*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22534 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 22535 | // Src: (atomic_load:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_atomic_load_32>> - Complexity = 4 |
| 22536 | // Dst: (ATOMIC_LOAD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 22537 | /* 45266*/ /*Scope*/ 20, /*->45287*/ |
| 22538 | /* 45267*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 22539 | /* 45269*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22540 | /* 45271*/ OPC_EmitMergeInputChains1_0, |
| 22541 | /* 45272*/ OPC_EmitInteger, MVT::i32, 0, |
| 22542 | /* 45275*/ OPC_EmitInteger, MVT::i32, 0, |
| 22543 | /* 45278*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22544 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 22545 | // Src: (atomic_load:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_atomic_load_8>> - Complexity = 4 |
| 22546 | // Dst: (ATOMIC_LOAD8_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 22547 | /* 45287*/ /*Scope*/ 20, /*->45308*/ |
| 22548 | /* 45288*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 22549 | /* 45290*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22550 | /* 45292*/ OPC_EmitMergeInputChains1_0, |
| 22551 | /* 45293*/ OPC_EmitInteger, MVT::i32, 0, |
| 22552 | /* 45296*/ OPC_EmitInteger, MVT::i32, 0, |
| 22553 | /* 45299*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22554 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 22555 | // Src: (atomic_load:{ *:[i32] } I32:{ *:[i32] }:$addr)<<P:Predicate_atomic_load_16>> - Complexity = 4 |
| 22556 | // Dst: (ATOMIC_LOAD16_U_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 22557 | /* 45308*/ 0, /*End of Scope*/ |
| 22558 | /* 45309*/ /*SwitchType*/ 20, MVT::i64,// ->45331 |
| 22559 | /* 45311*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_64 |
| 22560 | /* 45313*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 22561 | /* 45315*/ OPC_EmitMergeInputChains1_0, |
| 22562 | /* 45316*/ OPC_EmitInteger, MVT::i32, 0, |
| 22563 | /* 45319*/ OPC_EmitInteger, MVT::i32, 0, |
| 22564 | /* 45322*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22565 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 22566 | // Src: (atomic_load:{ *:[i64] } I32:{ *:[i32] }:$addr)<<P:Predicate_atomic_load_64>> - Complexity = 4 |
| 22567 | // Dst: (ATOMIC_LOAD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 22568 | /* 45331*/ 0, // EndSwitchType |
| 22569 | /* 45332*/ /*Scope*/ 93, /*->45426*/ |
| 22570 | /* 45333*/ OPC_CheckChild1Type, MVT::i64, |
| 22571 | /* 45335*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->45403 |
| 22572 | /* 45338*/ OPC_Scope, 20, /*->45360*/ // 3 children in Scope |
| 22573 | /* 45340*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_32 |
| 22574 | /* 45342*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22575 | /* 45344*/ OPC_EmitMergeInputChains1_0, |
| 22576 | /* 45345*/ OPC_EmitInteger, MVT::i32, 0, |
| 22577 | /* 45348*/ OPC_EmitInteger, MVT::i64, 0, |
| 22578 | /* 45351*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22579 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 22580 | // Src: (atomic_load:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_atomic_load_32>> - Complexity = 4 |
| 22581 | // Dst: (ATOMIC_LOAD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 22582 | /* 45360*/ /*Scope*/ 20, /*->45381*/ |
| 22583 | /* 45361*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_8 |
| 22584 | /* 45363*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22585 | /* 45365*/ OPC_EmitMergeInputChains1_0, |
| 22586 | /* 45366*/ OPC_EmitInteger, MVT::i32, 0, |
| 22587 | /* 45369*/ OPC_EmitInteger, MVT::i64, 0, |
| 22588 | /* 45372*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22589 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 22590 | // Src: (atomic_load:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_atomic_load_8>> - Complexity = 4 |
| 22591 | // Dst: (ATOMIC_LOAD8_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 22592 | /* 45381*/ /*Scope*/ 20, /*->45402*/ |
| 22593 | /* 45382*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_16 |
| 22594 | /* 45384*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22595 | /* 45386*/ OPC_EmitMergeInputChains1_0, |
| 22596 | /* 45387*/ OPC_EmitInteger, MVT::i32, 0, |
| 22597 | /* 45390*/ OPC_EmitInteger, MVT::i64, 0, |
| 22598 | /* 45393*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22599 | MVT::i32, 3/*#Ops*/, 2, 3, 1, |
| 22600 | // Src: (atomic_load:{ *:[i32] } I64:{ *:[i64] }:$addr)<<P:Predicate_atomic_load_16>> - Complexity = 4 |
| 22601 | // Dst: (ATOMIC_LOAD16_U_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 22602 | /* 45402*/ 0, /*End of Scope*/ |
| 22603 | /* 45403*/ /*SwitchType*/ 20, MVT::i64,// ->45425 |
| 22604 | /* 45405*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_64 |
| 22605 | /* 45407*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 22606 | /* 45409*/ OPC_EmitMergeInputChains1_0, |
| 22607 | /* 45410*/ OPC_EmitInteger, MVT::i32, 0, |
| 22608 | /* 45413*/ OPC_EmitInteger, MVT::i64, 0, |
| 22609 | /* 45416*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22610 | MVT::i64, 3/*#Ops*/, 2, 3, 1, |
| 22611 | // Src: (atomic_load:{ *:[i64] } I64:{ *:[i64] }:$addr)<<P:Predicate_atomic_load_64>> - Complexity = 4 |
| 22612 | // Dst: (ATOMIC_LOAD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 22613 | /* 45425*/ 0, // EndSwitchType |
| 22614 | /* 45426*/ 0, /*End of Scope*/ |
| 22615 | /* 45427*/ 0, /*End of Scope*/ |
| 22616 | /* 45428*/ /*SwitchOpcode*/ 122|128,8/*1146*/, TARGET_VAL(ISD::ATOMIC_LOAD_ADD),// ->46578 |
| 22617 | /* 45432*/ OPC_RecordMemRef, |
| 22618 | /* 45433*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node |
| 22619 | /* 45434*/ OPC_Scope, 29|128,5/*669*/, /*->46106*/ // 2 children in Scope |
| 22620 | /* 45437*/ OPC_MoveChild1, |
| 22621 | /* 45438*/ OPC_SwitchOpcode /*3 cases */, 73|128,1/*201*/, TARGET_VAL(ISD::ADD),// ->45644 |
| 22622 | /* 45443*/ OPC_RecordChild0, // #1 = $addr |
| 22623 | /* 45444*/ OPC_RecordChild1, // #2 = $off |
| 22624 | /* 45445*/ OPC_MoveChild1, |
| 22625 | /* 45446*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 22626 | /* 45449*/ OPC_MoveParent, |
| 22627 | /* 45450*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 22628 | /* 45452*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->45548 |
| 22629 | /* 45455*/ OPC_MoveParent, |
| 22630 | /* 45456*/ OPC_RecordChild2, // #3 = $val |
| 22631 | /* 45457*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->45525 |
| 22632 | /* 45460*/ OPC_Scope, 20, /*->45482*/ // 3 children in Scope |
| 22633 | /* 45462*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 22634 | /* 45464*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22635 | /* 45466*/ OPC_EmitMergeInputChains1_0, |
| 22636 | /* 45467*/ OPC_EmitInteger, MVT::i32, 0, |
| 22637 | /* 45470*/ OPC_EmitConvertToTarget, 2, |
| 22638 | /* 45472*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22639 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 22640 | // Src: (atomic_load_add:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_32>> - Complexity = 11 |
| 22641 | // Dst: (ATOMIC_RMW_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 22642 | /* 45482*/ /*Scope*/ 20, /*->45503*/ |
| 22643 | /* 45483*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 22644 | /* 45485*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22645 | /* 45487*/ OPC_EmitMergeInputChains1_0, |
| 22646 | /* 45488*/ OPC_EmitInteger, MVT::i32, 0, |
| 22647 | /* 45491*/ OPC_EmitConvertToTarget, 2, |
| 22648 | /* 45493*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22649 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 22650 | // Src: (atomic_load_add:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>> - Complexity = 11 |
| 22651 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 22652 | /* 45503*/ /*Scope*/ 20, /*->45524*/ |
| 22653 | /* 45504*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 22654 | /* 45506*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22655 | /* 45508*/ OPC_EmitMergeInputChains1_0, |
| 22656 | /* 45509*/ OPC_EmitInteger, MVT::i32, 0, |
| 22657 | /* 45512*/ OPC_EmitConvertToTarget, 2, |
| 22658 | /* 45514*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22659 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 22660 | // Src: (atomic_load_add:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>> - Complexity = 11 |
| 22661 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 22662 | /* 45524*/ 0, /*End of Scope*/ |
| 22663 | /* 45525*/ /*SwitchType*/ 20, MVT::i64,// ->45547 |
| 22664 | /* 45527*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_add_64 |
| 22665 | /* 45529*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22666 | /* 45531*/ OPC_EmitMergeInputChains1_0, |
| 22667 | /* 45532*/ OPC_EmitInteger, MVT::i32, 0, |
| 22668 | /* 45535*/ OPC_EmitConvertToTarget, 2, |
| 22669 | /* 45537*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22670 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 22671 | // Src: (atomic_load_add:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_add_64>> - Complexity = 11 |
| 22672 | // Dst: (ATOMIC_RMW_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 22673 | /* 45547*/ 0, // EndSwitchType |
| 22674 | /* 45548*/ /*SwitchType*/ 93, MVT::i64,// ->45643 |
| 22675 | /* 45550*/ OPC_MoveParent, |
| 22676 | /* 45551*/ OPC_RecordChild2, // #3 = $val |
| 22677 | /* 45552*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->45620 |
| 22678 | /* 45555*/ OPC_Scope, 20, /*->45577*/ // 3 children in Scope |
| 22679 | /* 45557*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 22680 | /* 45559*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22681 | /* 45561*/ OPC_EmitMergeInputChains1_0, |
| 22682 | /* 45562*/ OPC_EmitInteger, MVT::i32, 0, |
| 22683 | /* 45565*/ OPC_EmitConvertToTarget, 2, |
| 22684 | /* 45567*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22685 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 22686 | // Src: (atomic_load_add:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_32>> - Complexity = 11 |
| 22687 | // Dst: (ATOMIC_RMW_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 22688 | /* 45577*/ /*Scope*/ 20, /*->45598*/ |
| 22689 | /* 45578*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 22690 | /* 45580*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22691 | /* 45582*/ OPC_EmitMergeInputChains1_0, |
| 22692 | /* 45583*/ OPC_EmitInteger, MVT::i32, 0, |
| 22693 | /* 45586*/ OPC_EmitConvertToTarget, 2, |
| 22694 | /* 45588*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22695 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 22696 | // Src: (atomic_load_add:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>> - Complexity = 11 |
| 22697 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 22698 | /* 45598*/ /*Scope*/ 20, /*->45619*/ |
| 22699 | /* 45599*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 22700 | /* 45601*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22701 | /* 45603*/ OPC_EmitMergeInputChains1_0, |
| 22702 | /* 45604*/ OPC_EmitInteger, MVT::i32, 0, |
| 22703 | /* 45607*/ OPC_EmitConvertToTarget, 2, |
| 22704 | /* 45609*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22705 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 22706 | // Src: (atomic_load_add:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>> - Complexity = 11 |
| 22707 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 22708 | /* 45619*/ 0, /*End of Scope*/ |
| 22709 | /* 45620*/ /*SwitchType*/ 20, MVT::i64,// ->45642 |
| 22710 | /* 45622*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_add_64 |
| 22711 | /* 45624*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22712 | /* 45626*/ OPC_EmitMergeInputChains1_0, |
| 22713 | /* 45627*/ OPC_EmitInteger, MVT::i32, 0, |
| 22714 | /* 45630*/ OPC_EmitConvertToTarget, 2, |
| 22715 | /* 45632*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22716 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 22717 | // Src: (atomic_load_add:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_add_64>> - Complexity = 11 |
| 22718 | // Dst: (ATOMIC_RMW_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 22719 | /* 45642*/ 0, // EndSwitchType |
| 22720 | /* 45643*/ 0, // EndSwitchType |
| 22721 | /* 45644*/ /*SwitchOpcode*/ 73|128,1/*201*/, TARGET_VAL(ISD::OR),// ->45849 |
| 22722 | /* 45648*/ OPC_RecordChild0, // #1 = $addr |
| 22723 | /* 45649*/ OPC_RecordChild1, // #2 = $off |
| 22724 | /* 45650*/ OPC_MoveChild1, |
| 22725 | /* 45651*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 22726 | /* 45654*/ OPC_MoveParent, |
| 22727 | /* 45655*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 22728 | /* 45657*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->45753 |
| 22729 | /* 45660*/ OPC_MoveParent, |
| 22730 | /* 45661*/ OPC_RecordChild2, // #3 = $val |
| 22731 | /* 45662*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->45730 |
| 22732 | /* 45665*/ OPC_Scope, 20, /*->45687*/ // 3 children in Scope |
| 22733 | /* 45667*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 22734 | /* 45669*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22735 | /* 45671*/ OPC_EmitMergeInputChains1_0, |
| 22736 | /* 45672*/ OPC_EmitInteger, MVT::i32, 0, |
| 22737 | /* 45675*/ OPC_EmitConvertToTarget, 2, |
| 22738 | /* 45677*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22739 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 22740 | // Src: (atomic_load_add:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_32>> - Complexity = 11 |
| 22741 | // Dst: (ATOMIC_RMW_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 22742 | /* 45687*/ /*Scope*/ 20, /*->45708*/ |
| 22743 | /* 45688*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 22744 | /* 45690*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22745 | /* 45692*/ OPC_EmitMergeInputChains1_0, |
| 22746 | /* 45693*/ OPC_EmitInteger, MVT::i32, 0, |
| 22747 | /* 45696*/ OPC_EmitConvertToTarget, 2, |
| 22748 | /* 45698*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22749 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 22750 | // Src: (atomic_load_add:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>> - Complexity = 11 |
| 22751 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 22752 | /* 45708*/ /*Scope*/ 20, /*->45729*/ |
| 22753 | /* 45709*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 22754 | /* 45711*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22755 | /* 45713*/ OPC_EmitMergeInputChains1_0, |
| 22756 | /* 45714*/ OPC_EmitInteger, MVT::i32, 0, |
| 22757 | /* 45717*/ OPC_EmitConvertToTarget, 2, |
| 22758 | /* 45719*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22759 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 22760 | // Src: (atomic_load_add:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>> - Complexity = 11 |
| 22761 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 22762 | /* 45729*/ 0, /*End of Scope*/ |
| 22763 | /* 45730*/ /*SwitchType*/ 20, MVT::i64,// ->45752 |
| 22764 | /* 45732*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_add_64 |
| 22765 | /* 45734*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22766 | /* 45736*/ OPC_EmitMergeInputChains1_0, |
| 22767 | /* 45737*/ OPC_EmitInteger, MVT::i32, 0, |
| 22768 | /* 45740*/ OPC_EmitConvertToTarget, 2, |
| 22769 | /* 45742*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22770 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 22771 | // Src: (atomic_load_add:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_add_64>> - Complexity = 11 |
| 22772 | // Dst: (ATOMIC_RMW_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 22773 | /* 45752*/ 0, // EndSwitchType |
| 22774 | /* 45753*/ /*SwitchType*/ 93, MVT::i64,// ->45848 |
| 22775 | /* 45755*/ OPC_MoveParent, |
| 22776 | /* 45756*/ OPC_RecordChild2, // #3 = $val |
| 22777 | /* 45757*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->45825 |
| 22778 | /* 45760*/ OPC_Scope, 20, /*->45782*/ // 3 children in Scope |
| 22779 | /* 45762*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 22780 | /* 45764*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22781 | /* 45766*/ OPC_EmitMergeInputChains1_0, |
| 22782 | /* 45767*/ OPC_EmitInteger, MVT::i32, 0, |
| 22783 | /* 45770*/ OPC_EmitConvertToTarget, 2, |
| 22784 | /* 45772*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22785 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 22786 | // Src: (atomic_load_add:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_32>> - Complexity = 11 |
| 22787 | // Dst: (ATOMIC_RMW_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 22788 | /* 45782*/ /*Scope*/ 20, /*->45803*/ |
| 22789 | /* 45783*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 22790 | /* 45785*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22791 | /* 45787*/ OPC_EmitMergeInputChains1_0, |
| 22792 | /* 45788*/ OPC_EmitInteger, MVT::i32, 0, |
| 22793 | /* 45791*/ OPC_EmitConvertToTarget, 2, |
| 22794 | /* 45793*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22795 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 22796 | // Src: (atomic_load_add:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>> - Complexity = 11 |
| 22797 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 22798 | /* 45803*/ /*Scope*/ 20, /*->45824*/ |
| 22799 | /* 45804*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 22800 | /* 45806*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22801 | /* 45808*/ OPC_EmitMergeInputChains1_0, |
| 22802 | /* 45809*/ OPC_EmitInteger, MVT::i32, 0, |
| 22803 | /* 45812*/ OPC_EmitConvertToTarget, 2, |
| 22804 | /* 45814*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22805 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 22806 | // Src: (atomic_load_add:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>> - Complexity = 11 |
| 22807 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 22808 | /* 45824*/ 0, /*End of Scope*/ |
| 22809 | /* 45825*/ /*SwitchType*/ 20, MVT::i64,// ->45847 |
| 22810 | /* 45827*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_add_64 |
| 22811 | /* 45829*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22812 | /* 45831*/ OPC_EmitMergeInputChains1_0, |
| 22813 | /* 45832*/ OPC_EmitInteger, MVT::i32, 0, |
| 22814 | /* 45835*/ OPC_EmitConvertToTarget, 2, |
| 22815 | /* 45837*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22816 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 22817 | // Src: (atomic_load_add:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_add_64>> - Complexity = 11 |
| 22818 | // Dst: (ATOMIC_RMW_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 22819 | /* 45847*/ 0, // EndSwitchType |
| 22820 | /* 45848*/ 0, // EndSwitchType |
| 22821 | /* 45849*/ /*SwitchOpcode*/ 124|128,1/*252*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->46105 |
| 22822 | /* 45853*/ OPC_RecordChild0, // #1 = $off |
| 22823 | /* 45854*/ OPC_MoveChild0, |
| 22824 | /* 45855*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 22825 | /* 45858*/ OPC_MoveParent, |
| 22826 | /* 45859*/ OPC_MoveParent, |
| 22827 | /* 45860*/ OPC_RecordChild2, // #2 = $val |
| 22828 | /* 45861*/ OPC_SwitchType /*2 cases */, 51|128,1/*179*/, MVT::i32,// ->46044 |
| 22829 | /* 45865*/ OPC_Scope, 58, /*->45925*/ // 3 children in Scope |
| 22830 | /* 45867*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 22831 | /* 45869*/ OPC_Scope, 26, /*->45897*/ // 2 children in Scope |
| 22832 | /* 45871*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 22833 | /* 45873*/ OPC_EmitMergeInputChains1_0, |
| 22834 | /* 45874*/ OPC_EmitInteger, MVT::i32, 0, |
| 22835 | /* 45877*/ OPC_EmitInteger, MVT::i32, 0, |
| 22836 | /* 45880*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22837 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 22838 | /* 45887*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22839 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 22840 | // Src: (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_32>> - Complexity = 10 |
| 22841 | // Dst: (ATOMIC_RMW_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 22842 | /* 45897*/ /*Scope*/ 26, /*->45924*/ |
| 22843 | /* 45898*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 22844 | /* 45900*/ OPC_EmitMergeInputChains1_0, |
| 22845 | /* 45901*/ OPC_EmitInteger, MVT::i32, 0, |
| 22846 | /* 45904*/ OPC_EmitInteger, MVT::i64, 0, |
| 22847 | /* 45907*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22848 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 22849 | /* 45914*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22850 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 22851 | // Src: (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_32>> - Complexity = 10 |
| 22852 | // Dst: (ATOMIC_RMW_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 22853 | /* 45924*/ 0, /*End of Scope*/ |
| 22854 | /* 45925*/ /*Scope*/ 58, /*->45984*/ |
| 22855 | /* 45926*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 22856 | /* 45928*/ OPC_Scope, 26, /*->45956*/ // 2 children in Scope |
| 22857 | /* 45930*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 22858 | /* 45932*/ OPC_EmitMergeInputChains1_0, |
| 22859 | /* 45933*/ OPC_EmitInteger, MVT::i32, 0, |
| 22860 | /* 45936*/ OPC_EmitInteger, MVT::i32, 0, |
| 22861 | /* 45939*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22862 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 22863 | /* 45946*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22864 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 22865 | // Src: (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>> - Complexity = 10 |
| 22866 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 22867 | /* 45956*/ /*Scope*/ 26, /*->45983*/ |
| 22868 | /* 45957*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 22869 | /* 45959*/ OPC_EmitMergeInputChains1_0, |
| 22870 | /* 45960*/ OPC_EmitInteger, MVT::i32, 0, |
| 22871 | /* 45963*/ OPC_EmitInteger, MVT::i64, 0, |
| 22872 | /* 45966*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22873 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 22874 | /* 45973*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22875 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 22876 | // Src: (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>> - Complexity = 10 |
| 22877 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 22878 | /* 45983*/ 0, /*End of Scope*/ |
| 22879 | /* 45984*/ /*Scope*/ 58, /*->46043*/ |
| 22880 | /* 45985*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 22881 | /* 45987*/ OPC_Scope, 26, /*->46015*/ // 2 children in Scope |
| 22882 | /* 45989*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 22883 | /* 45991*/ OPC_EmitMergeInputChains1_0, |
| 22884 | /* 45992*/ OPC_EmitInteger, MVT::i32, 0, |
| 22885 | /* 45995*/ OPC_EmitInteger, MVT::i32, 0, |
| 22886 | /* 45998*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22887 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 22888 | /* 46005*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22889 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 22890 | // Src: (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>> - Complexity = 10 |
| 22891 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 22892 | /* 46015*/ /*Scope*/ 26, /*->46042*/ |
| 22893 | /* 46016*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 22894 | /* 46018*/ OPC_EmitMergeInputChains1_0, |
| 22895 | /* 46019*/ OPC_EmitInteger, MVT::i32, 0, |
| 22896 | /* 46022*/ OPC_EmitInteger, MVT::i64, 0, |
| 22897 | /* 46025*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22898 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 22899 | /* 46032*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22900 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 22901 | // Src: (atomic_load_add:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>> - Complexity = 10 |
| 22902 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 22903 | /* 46042*/ 0, /*End of Scope*/ |
| 22904 | /* 46043*/ 0, /*End of Scope*/ |
| 22905 | /* 46044*/ /*SwitchType*/ 58, MVT::i64,// ->46104 |
| 22906 | /* 46046*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_add_64 |
| 22907 | /* 46048*/ OPC_Scope, 26, /*->46076*/ // 2 children in Scope |
| 22908 | /* 46050*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 22909 | /* 46052*/ OPC_EmitMergeInputChains1_0, |
| 22910 | /* 46053*/ OPC_EmitInteger, MVT::i32, 0, |
| 22911 | /* 46056*/ OPC_EmitInteger, MVT::i32, 0, |
| 22912 | /* 46059*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22913 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 22914 | /* 46066*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22915 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 22916 | // Src: (atomic_load_add:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_add_64>> - Complexity = 10 |
| 22917 | // Dst: (ATOMIC_RMW_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 22918 | /* 46076*/ /*Scope*/ 26, /*->46103*/ |
| 22919 | /* 46077*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 22920 | /* 46079*/ OPC_EmitMergeInputChains1_0, |
| 22921 | /* 46080*/ OPC_EmitInteger, MVT::i32, 0, |
| 22922 | /* 46083*/ OPC_EmitInteger, MVT::i64, 0, |
| 22923 | /* 46086*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22924 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 22925 | /* 46093*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22926 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 22927 | // Src: (atomic_load_add:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_add_64>> - Complexity = 10 |
| 22928 | // Dst: (ATOMIC_RMW_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 22929 | /* 46103*/ 0, /*End of Scope*/ |
| 22930 | /* 46104*/ 0, // EndSwitchType |
| 22931 | /* 46105*/ 0, // EndSwitchOpcode |
| 22932 | /* 46106*/ /*Scope*/ 85|128,3/*469*/, /*->46577*/ |
| 22933 | /* 46108*/ OPC_RecordChild1, // #1 = $off |
| 22934 | /* 46109*/ OPC_Scope, 10|128,2/*266*/, /*->46378*/ // 3 children in Scope |
| 22935 | /* 46112*/ OPC_MoveChild1, |
| 22936 | /* 46113*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 22937 | /* 46116*/ OPC_MoveParent, |
| 22938 | /* 46117*/ OPC_RecordChild2, // #2 = $val |
| 22939 | /* 46118*/ OPC_SwitchType /*2 cases */, 63|128,1/*191*/, MVT::i32,// ->46313 |
| 22940 | /* 46122*/ OPC_Scope, 62, /*->46186*/ // 3 children in Scope |
| 22941 | /* 46124*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 22942 | /* 46126*/ OPC_Scope, 28, /*->46156*/ // 2 children in Scope |
| 22943 | /* 46128*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22944 | /* 46130*/ OPC_EmitMergeInputChains1_0, |
| 22945 | /* 46131*/ OPC_EmitInteger, MVT::i32, 0, |
| 22946 | /* 46134*/ OPC_EmitConvertToTarget, 1, |
| 22947 | /* 46136*/ OPC_EmitInteger, MVT::i32, 0, |
| 22948 | /* 46139*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22949 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 22950 | /* 46146*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22951 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 22952 | // Src: (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_32>> - Complexity = 7 |
| 22953 | // Dst: (ATOMIC_RMW_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 22954 | /* 46156*/ /*Scope*/ 28, /*->46185*/ |
| 22955 | /* 46157*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22956 | /* 46159*/ OPC_EmitMergeInputChains1_0, |
| 22957 | /* 46160*/ OPC_EmitInteger, MVT::i32, 0, |
| 22958 | /* 46163*/ OPC_EmitConvertToTarget, 1, |
| 22959 | /* 46165*/ OPC_EmitInteger, MVT::i64, 0, |
| 22960 | /* 46168*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22961 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 22962 | /* 46175*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22963 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 22964 | // Src: (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_32>> - Complexity = 7 |
| 22965 | // Dst: (ATOMIC_RMW_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 22966 | /* 46185*/ 0, /*End of Scope*/ |
| 22967 | /* 46186*/ /*Scope*/ 62, /*->46249*/ |
| 22968 | /* 46187*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 22969 | /* 46189*/ OPC_Scope, 28, /*->46219*/ // 2 children in Scope |
| 22970 | /* 46191*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22971 | /* 46193*/ OPC_EmitMergeInputChains1_0, |
| 22972 | /* 46194*/ OPC_EmitInteger, MVT::i32, 0, |
| 22973 | /* 46197*/ OPC_EmitConvertToTarget, 1, |
| 22974 | /* 46199*/ OPC_EmitInteger, MVT::i32, 0, |
| 22975 | /* 46202*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 22976 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 22977 | /* 46209*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 22978 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 22979 | // Src: (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>> - Complexity = 7 |
| 22980 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 22981 | /* 46219*/ /*Scope*/ 28, /*->46248*/ |
| 22982 | /* 46220*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22983 | /* 46222*/ OPC_EmitMergeInputChains1_0, |
| 22984 | /* 46223*/ OPC_EmitInteger, MVT::i32, 0, |
| 22985 | /* 46226*/ OPC_EmitConvertToTarget, 1, |
| 22986 | /* 46228*/ OPC_EmitInteger, MVT::i64, 0, |
| 22987 | /* 46231*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 22988 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 22989 | /* 46238*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 22990 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 22991 | // Src: (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>> - Complexity = 7 |
| 22992 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 22993 | /* 46248*/ 0, /*End of Scope*/ |
| 22994 | /* 46249*/ /*Scope*/ 62, /*->46312*/ |
| 22995 | /* 46250*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 22996 | /* 46252*/ OPC_Scope, 28, /*->46282*/ // 2 children in Scope |
| 22997 | /* 46254*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 22998 | /* 46256*/ OPC_EmitMergeInputChains1_0, |
| 22999 | /* 46257*/ OPC_EmitInteger, MVT::i32, 0, |
| 23000 | /* 46260*/ OPC_EmitConvertToTarget, 1, |
| 23001 | /* 46262*/ OPC_EmitInteger, MVT::i32, 0, |
| 23002 | /* 46265*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23003 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 23004 | /* 46272*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23005 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 23006 | // Src: (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>> - Complexity = 7 |
| 23007 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 23008 | /* 46282*/ /*Scope*/ 28, /*->46311*/ |
| 23009 | /* 46283*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23010 | /* 46285*/ OPC_EmitMergeInputChains1_0, |
| 23011 | /* 46286*/ OPC_EmitInteger, MVT::i32, 0, |
| 23012 | /* 46289*/ OPC_EmitConvertToTarget, 1, |
| 23013 | /* 46291*/ OPC_EmitInteger, MVT::i64, 0, |
| 23014 | /* 46294*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23015 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 23016 | /* 46301*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23017 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 23018 | // Src: (atomic_load_add:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>> - Complexity = 7 |
| 23019 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 23020 | /* 46311*/ 0, /*End of Scope*/ |
| 23021 | /* 46312*/ 0, /*End of Scope*/ |
| 23022 | /* 46313*/ /*SwitchType*/ 62, MVT::i64,// ->46377 |
| 23023 | /* 46315*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_add_64 |
| 23024 | /* 46317*/ OPC_Scope, 28, /*->46347*/ // 2 children in Scope |
| 23025 | /* 46319*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23026 | /* 46321*/ OPC_EmitMergeInputChains1_0, |
| 23027 | /* 46322*/ OPC_EmitInteger, MVT::i32, 0, |
| 23028 | /* 46325*/ OPC_EmitConvertToTarget, 1, |
| 23029 | /* 46327*/ OPC_EmitInteger, MVT::i32, 0, |
| 23030 | /* 46330*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23031 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 23032 | /* 46337*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23033 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 23034 | // Src: (atomic_load_add:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_add_64>> - Complexity = 7 |
| 23035 | // Dst: (ATOMIC_RMW_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 23036 | /* 46347*/ /*Scope*/ 28, /*->46376*/ |
| 23037 | /* 46348*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23038 | /* 46350*/ OPC_EmitMergeInputChains1_0, |
| 23039 | /* 46351*/ OPC_EmitInteger, MVT::i32, 0, |
| 23040 | /* 46354*/ OPC_EmitConvertToTarget, 1, |
| 23041 | /* 46356*/ OPC_EmitInteger, MVT::i64, 0, |
| 23042 | /* 46359*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23043 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 23044 | /* 46366*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23045 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 23046 | // Src: (atomic_load_add:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_add_64>> - Complexity = 7 |
| 23047 | // Dst: (ATOMIC_RMW_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 23048 | /* 46376*/ 0, /*End of Scope*/ |
| 23049 | /* 46377*/ 0, // EndSwitchType |
| 23050 | /* 46378*/ /*Scope*/ 98, /*->46477*/ |
| 23051 | /* 46379*/ OPC_CheckChild1Type, MVT::i32, |
| 23052 | /* 46381*/ OPC_RecordChild2, // #2 = $val |
| 23053 | /* 46382*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->46453 |
| 23054 | /* 46385*/ OPC_Scope, 21, /*->46408*/ // 3 children in Scope |
| 23055 | /* 46387*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 23056 | /* 46389*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23057 | /* 46391*/ OPC_EmitMergeInputChains1_0, |
| 23058 | /* 46392*/ OPC_EmitInteger, MVT::i32, 0, |
| 23059 | /* 46395*/ OPC_EmitInteger, MVT::i32, 0, |
| 23060 | /* 46398*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23061 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 23062 | // Src: (atomic_load_add:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_32>> - Complexity = 4 |
| 23063 | // Dst: (ATOMIC_RMW_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23064 | /* 46408*/ /*Scope*/ 21, /*->46430*/ |
| 23065 | /* 46409*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 23066 | /* 46411*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23067 | /* 46413*/ OPC_EmitMergeInputChains1_0, |
| 23068 | /* 46414*/ OPC_EmitInteger, MVT::i32, 0, |
| 23069 | /* 46417*/ OPC_EmitInteger, MVT::i32, 0, |
| 23070 | /* 46420*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23071 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 23072 | // Src: (atomic_load_add:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>> - Complexity = 4 |
| 23073 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23074 | /* 46430*/ /*Scope*/ 21, /*->46452*/ |
| 23075 | /* 46431*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 23076 | /* 46433*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23077 | /* 46435*/ OPC_EmitMergeInputChains1_0, |
| 23078 | /* 46436*/ OPC_EmitInteger, MVT::i32, 0, |
| 23079 | /* 46439*/ OPC_EmitInteger, MVT::i32, 0, |
| 23080 | /* 46442*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23081 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 23082 | // Src: (atomic_load_add:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>> - Complexity = 4 |
| 23083 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23084 | /* 46452*/ 0, /*End of Scope*/ |
| 23085 | /* 46453*/ /*SwitchType*/ 21, MVT::i64,// ->46476 |
| 23086 | /* 46455*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_add_64 |
| 23087 | /* 46457*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23088 | /* 46459*/ OPC_EmitMergeInputChains1_0, |
| 23089 | /* 46460*/ OPC_EmitInteger, MVT::i32, 0, |
| 23090 | /* 46463*/ OPC_EmitInteger, MVT::i32, 0, |
| 23091 | /* 46466*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23092 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 23093 | // Src: (atomic_load_add:{ *:[i64] } I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_add_64>> - Complexity = 4 |
| 23094 | // Dst: (ATOMIC_RMW_ADD_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 23095 | /* 46476*/ 0, // EndSwitchType |
| 23096 | /* 46477*/ /*Scope*/ 98, /*->46576*/ |
| 23097 | /* 46478*/ OPC_CheckChild1Type, MVT::i64, |
| 23098 | /* 46480*/ OPC_RecordChild2, // #2 = $val |
| 23099 | /* 46481*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->46552 |
| 23100 | /* 46484*/ OPC_Scope, 21, /*->46507*/ // 3 children in Scope |
| 23101 | /* 46486*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_add_32 |
| 23102 | /* 46488*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23103 | /* 46490*/ OPC_EmitMergeInputChains1_0, |
| 23104 | /* 46491*/ OPC_EmitInteger, MVT::i32, 0, |
| 23105 | /* 46494*/ OPC_EmitInteger, MVT::i64, 0, |
| 23106 | /* 46497*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23107 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 23108 | // Src: (atomic_load_add:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_32>> - Complexity = 4 |
| 23109 | // Dst: (ATOMIC_RMW_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23110 | /* 46507*/ /*Scope*/ 21, /*->46529*/ |
| 23111 | /* 46508*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_add_8 |
| 23112 | /* 46510*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23113 | /* 46512*/ OPC_EmitMergeInputChains1_0, |
| 23114 | /* 46513*/ OPC_EmitInteger, MVT::i32, 0, |
| 23115 | /* 46516*/ OPC_EmitInteger, MVT::i64, 0, |
| 23116 | /* 46519*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23117 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 23118 | // Src: (atomic_load_add:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_8>> - Complexity = 4 |
| 23119 | // Dst: (ATOMIC_RMW8_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23120 | /* 46529*/ /*Scope*/ 21, /*->46551*/ |
| 23121 | /* 46530*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_add_16 |
| 23122 | /* 46532*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23123 | /* 46534*/ OPC_EmitMergeInputChains1_0, |
| 23124 | /* 46535*/ OPC_EmitInteger, MVT::i32, 0, |
| 23125 | /* 46538*/ OPC_EmitInteger, MVT::i64, 0, |
| 23126 | /* 46541*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23127 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 23128 | // Src: (atomic_load_add:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_add_16>> - Complexity = 4 |
| 23129 | // Dst: (ATOMIC_RMW16_U_ADD_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23130 | /* 46551*/ 0, /*End of Scope*/ |
| 23131 | /* 46552*/ /*SwitchType*/ 21, MVT::i64,// ->46575 |
| 23132 | /* 46554*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_add_64 |
| 23133 | /* 46556*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23134 | /* 46558*/ OPC_EmitMergeInputChains1_0, |
| 23135 | /* 46559*/ OPC_EmitInteger, MVT::i32, 0, |
| 23136 | /* 46562*/ OPC_EmitInteger, MVT::i64, 0, |
| 23137 | /* 46565*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23138 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 23139 | // Src: (atomic_load_add:{ *:[i64] } I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_add_64>> - Complexity = 4 |
| 23140 | // Dst: (ATOMIC_RMW_ADD_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 23141 | /* 46575*/ 0, // EndSwitchType |
| 23142 | /* 46576*/ 0, /*End of Scope*/ |
| 23143 | /* 46577*/ 0, /*End of Scope*/ |
| 23144 | /* 46578*/ /*SwitchOpcode*/ 122|128,8/*1146*/, TARGET_VAL(ISD::ATOMIC_LOAD_SUB),// ->47728 |
| 23145 | /* 46582*/ OPC_RecordMemRef, |
| 23146 | /* 46583*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node |
| 23147 | /* 46584*/ OPC_Scope, 29|128,5/*669*/, /*->47256*/ // 2 children in Scope |
| 23148 | /* 46587*/ OPC_MoveChild1, |
| 23149 | /* 46588*/ OPC_SwitchOpcode /*3 cases */, 73|128,1/*201*/, TARGET_VAL(ISD::ADD),// ->46794 |
| 23150 | /* 46593*/ OPC_RecordChild0, // #1 = $addr |
| 23151 | /* 46594*/ OPC_RecordChild1, // #2 = $off |
| 23152 | /* 46595*/ OPC_MoveChild1, |
| 23153 | /* 46596*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 23154 | /* 46599*/ OPC_MoveParent, |
| 23155 | /* 46600*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 23156 | /* 46602*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->46698 |
| 23157 | /* 46605*/ OPC_MoveParent, |
| 23158 | /* 46606*/ OPC_RecordChild2, // #3 = $val |
| 23159 | /* 46607*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->46675 |
| 23160 | /* 46610*/ OPC_Scope, 20, /*->46632*/ // 3 children in Scope |
| 23161 | /* 46612*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 23162 | /* 46614*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23163 | /* 46616*/ OPC_EmitMergeInputChains1_0, |
| 23164 | /* 46617*/ OPC_EmitInteger, MVT::i32, 0, |
| 23165 | /* 46620*/ OPC_EmitConvertToTarget, 2, |
| 23166 | /* 46622*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23167 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23168 | // Src: (atomic_load_sub:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_32>> - Complexity = 11 |
| 23169 | // Dst: (ATOMIC_RMW_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23170 | /* 46632*/ /*Scope*/ 20, /*->46653*/ |
| 23171 | /* 46633*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 23172 | /* 46635*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23173 | /* 46637*/ OPC_EmitMergeInputChains1_0, |
| 23174 | /* 46638*/ OPC_EmitInteger, MVT::i32, 0, |
| 23175 | /* 46641*/ OPC_EmitConvertToTarget, 2, |
| 23176 | /* 46643*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23177 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23178 | // Src: (atomic_load_sub:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>> - Complexity = 11 |
| 23179 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23180 | /* 46653*/ /*Scope*/ 20, /*->46674*/ |
| 23181 | /* 46654*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 23182 | /* 46656*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23183 | /* 46658*/ OPC_EmitMergeInputChains1_0, |
| 23184 | /* 46659*/ OPC_EmitInteger, MVT::i32, 0, |
| 23185 | /* 46662*/ OPC_EmitConvertToTarget, 2, |
| 23186 | /* 46664*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23187 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23188 | // Src: (atomic_load_sub:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>> - Complexity = 11 |
| 23189 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23190 | /* 46674*/ 0, /*End of Scope*/ |
| 23191 | /* 46675*/ /*SwitchType*/ 20, MVT::i64,// ->46697 |
| 23192 | /* 46677*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_sub_64 |
| 23193 | /* 46679*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23194 | /* 46681*/ OPC_EmitMergeInputChains1_0, |
| 23195 | /* 46682*/ OPC_EmitInteger, MVT::i32, 0, |
| 23196 | /* 46685*/ OPC_EmitConvertToTarget, 2, |
| 23197 | /* 46687*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23198 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 23199 | // Src: (atomic_load_sub:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_sub_64>> - Complexity = 11 |
| 23200 | // Dst: (ATOMIC_RMW_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 23201 | /* 46697*/ 0, // EndSwitchType |
| 23202 | /* 46698*/ /*SwitchType*/ 93, MVT::i64,// ->46793 |
| 23203 | /* 46700*/ OPC_MoveParent, |
| 23204 | /* 46701*/ OPC_RecordChild2, // #3 = $val |
| 23205 | /* 46702*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->46770 |
| 23206 | /* 46705*/ OPC_Scope, 20, /*->46727*/ // 3 children in Scope |
| 23207 | /* 46707*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 23208 | /* 46709*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23209 | /* 46711*/ OPC_EmitMergeInputChains1_0, |
| 23210 | /* 46712*/ OPC_EmitInteger, MVT::i32, 0, |
| 23211 | /* 46715*/ OPC_EmitConvertToTarget, 2, |
| 23212 | /* 46717*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23213 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23214 | // Src: (atomic_load_sub:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_32>> - Complexity = 11 |
| 23215 | // Dst: (ATOMIC_RMW_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23216 | /* 46727*/ /*Scope*/ 20, /*->46748*/ |
| 23217 | /* 46728*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 23218 | /* 46730*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23219 | /* 46732*/ OPC_EmitMergeInputChains1_0, |
| 23220 | /* 46733*/ OPC_EmitInteger, MVT::i32, 0, |
| 23221 | /* 46736*/ OPC_EmitConvertToTarget, 2, |
| 23222 | /* 46738*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23223 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23224 | // Src: (atomic_load_sub:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>> - Complexity = 11 |
| 23225 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23226 | /* 46748*/ /*Scope*/ 20, /*->46769*/ |
| 23227 | /* 46749*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 23228 | /* 46751*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23229 | /* 46753*/ OPC_EmitMergeInputChains1_0, |
| 23230 | /* 46754*/ OPC_EmitInteger, MVT::i32, 0, |
| 23231 | /* 46757*/ OPC_EmitConvertToTarget, 2, |
| 23232 | /* 46759*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23233 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23234 | // Src: (atomic_load_sub:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>> - Complexity = 11 |
| 23235 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23236 | /* 46769*/ 0, /*End of Scope*/ |
| 23237 | /* 46770*/ /*SwitchType*/ 20, MVT::i64,// ->46792 |
| 23238 | /* 46772*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_sub_64 |
| 23239 | /* 46774*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23240 | /* 46776*/ OPC_EmitMergeInputChains1_0, |
| 23241 | /* 46777*/ OPC_EmitInteger, MVT::i32, 0, |
| 23242 | /* 46780*/ OPC_EmitConvertToTarget, 2, |
| 23243 | /* 46782*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23244 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 23245 | // Src: (atomic_load_sub:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_sub_64>> - Complexity = 11 |
| 23246 | // Dst: (ATOMIC_RMW_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 23247 | /* 46792*/ 0, // EndSwitchType |
| 23248 | /* 46793*/ 0, // EndSwitchType |
| 23249 | /* 46794*/ /*SwitchOpcode*/ 73|128,1/*201*/, TARGET_VAL(ISD::OR),// ->46999 |
| 23250 | /* 46798*/ OPC_RecordChild0, // #1 = $addr |
| 23251 | /* 46799*/ OPC_RecordChild1, // #2 = $off |
| 23252 | /* 46800*/ OPC_MoveChild1, |
| 23253 | /* 46801*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 23254 | /* 46804*/ OPC_MoveParent, |
| 23255 | /* 46805*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 23256 | /* 46807*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->46903 |
| 23257 | /* 46810*/ OPC_MoveParent, |
| 23258 | /* 46811*/ OPC_RecordChild2, // #3 = $val |
| 23259 | /* 46812*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->46880 |
| 23260 | /* 46815*/ OPC_Scope, 20, /*->46837*/ // 3 children in Scope |
| 23261 | /* 46817*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 23262 | /* 46819*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23263 | /* 46821*/ OPC_EmitMergeInputChains1_0, |
| 23264 | /* 46822*/ OPC_EmitInteger, MVT::i32, 0, |
| 23265 | /* 46825*/ OPC_EmitConvertToTarget, 2, |
| 23266 | /* 46827*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23267 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23268 | // Src: (atomic_load_sub:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_32>> - Complexity = 11 |
| 23269 | // Dst: (ATOMIC_RMW_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23270 | /* 46837*/ /*Scope*/ 20, /*->46858*/ |
| 23271 | /* 46838*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 23272 | /* 46840*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23273 | /* 46842*/ OPC_EmitMergeInputChains1_0, |
| 23274 | /* 46843*/ OPC_EmitInteger, MVT::i32, 0, |
| 23275 | /* 46846*/ OPC_EmitConvertToTarget, 2, |
| 23276 | /* 46848*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23277 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23278 | // Src: (atomic_load_sub:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>> - Complexity = 11 |
| 23279 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23280 | /* 46858*/ /*Scope*/ 20, /*->46879*/ |
| 23281 | /* 46859*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 23282 | /* 46861*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23283 | /* 46863*/ OPC_EmitMergeInputChains1_0, |
| 23284 | /* 46864*/ OPC_EmitInteger, MVT::i32, 0, |
| 23285 | /* 46867*/ OPC_EmitConvertToTarget, 2, |
| 23286 | /* 46869*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23287 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23288 | // Src: (atomic_load_sub:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>> - Complexity = 11 |
| 23289 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23290 | /* 46879*/ 0, /*End of Scope*/ |
| 23291 | /* 46880*/ /*SwitchType*/ 20, MVT::i64,// ->46902 |
| 23292 | /* 46882*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_sub_64 |
| 23293 | /* 46884*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23294 | /* 46886*/ OPC_EmitMergeInputChains1_0, |
| 23295 | /* 46887*/ OPC_EmitInteger, MVT::i32, 0, |
| 23296 | /* 46890*/ OPC_EmitConvertToTarget, 2, |
| 23297 | /* 46892*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23298 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 23299 | // Src: (atomic_load_sub:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_sub_64>> - Complexity = 11 |
| 23300 | // Dst: (ATOMIC_RMW_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 23301 | /* 46902*/ 0, // EndSwitchType |
| 23302 | /* 46903*/ /*SwitchType*/ 93, MVT::i64,// ->46998 |
| 23303 | /* 46905*/ OPC_MoveParent, |
| 23304 | /* 46906*/ OPC_RecordChild2, // #3 = $val |
| 23305 | /* 46907*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->46975 |
| 23306 | /* 46910*/ OPC_Scope, 20, /*->46932*/ // 3 children in Scope |
| 23307 | /* 46912*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 23308 | /* 46914*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23309 | /* 46916*/ OPC_EmitMergeInputChains1_0, |
| 23310 | /* 46917*/ OPC_EmitInteger, MVT::i32, 0, |
| 23311 | /* 46920*/ OPC_EmitConvertToTarget, 2, |
| 23312 | /* 46922*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23313 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23314 | // Src: (atomic_load_sub:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_32>> - Complexity = 11 |
| 23315 | // Dst: (ATOMIC_RMW_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23316 | /* 46932*/ /*Scope*/ 20, /*->46953*/ |
| 23317 | /* 46933*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 23318 | /* 46935*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23319 | /* 46937*/ OPC_EmitMergeInputChains1_0, |
| 23320 | /* 46938*/ OPC_EmitInteger, MVT::i32, 0, |
| 23321 | /* 46941*/ OPC_EmitConvertToTarget, 2, |
| 23322 | /* 46943*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23323 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23324 | // Src: (atomic_load_sub:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>> - Complexity = 11 |
| 23325 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23326 | /* 46953*/ /*Scope*/ 20, /*->46974*/ |
| 23327 | /* 46954*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 23328 | /* 46956*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23329 | /* 46958*/ OPC_EmitMergeInputChains1_0, |
| 23330 | /* 46959*/ OPC_EmitInteger, MVT::i32, 0, |
| 23331 | /* 46962*/ OPC_EmitConvertToTarget, 2, |
| 23332 | /* 46964*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23333 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23334 | // Src: (atomic_load_sub:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>> - Complexity = 11 |
| 23335 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23336 | /* 46974*/ 0, /*End of Scope*/ |
| 23337 | /* 46975*/ /*SwitchType*/ 20, MVT::i64,// ->46997 |
| 23338 | /* 46977*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_sub_64 |
| 23339 | /* 46979*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23340 | /* 46981*/ OPC_EmitMergeInputChains1_0, |
| 23341 | /* 46982*/ OPC_EmitInteger, MVT::i32, 0, |
| 23342 | /* 46985*/ OPC_EmitConvertToTarget, 2, |
| 23343 | /* 46987*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23344 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 23345 | // Src: (atomic_load_sub:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_sub_64>> - Complexity = 11 |
| 23346 | // Dst: (ATOMIC_RMW_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 23347 | /* 46997*/ 0, // EndSwitchType |
| 23348 | /* 46998*/ 0, // EndSwitchType |
| 23349 | /* 46999*/ /*SwitchOpcode*/ 124|128,1/*252*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->47255 |
| 23350 | /* 47003*/ OPC_RecordChild0, // #1 = $off |
| 23351 | /* 47004*/ OPC_MoveChild0, |
| 23352 | /* 47005*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 23353 | /* 47008*/ OPC_MoveParent, |
| 23354 | /* 47009*/ OPC_MoveParent, |
| 23355 | /* 47010*/ OPC_RecordChild2, // #2 = $val |
| 23356 | /* 47011*/ OPC_SwitchType /*2 cases */, 51|128,1/*179*/, MVT::i32,// ->47194 |
| 23357 | /* 47015*/ OPC_Scope, 58, /*->47075*/ // 3 children in Scope |
| 23358 | /* 47017*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 23359 | /* 47019*/ OPC_Scope, 26, /*->47047*/ // 2 children in Scope |
| 23360 | /* 47021*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23361 | /* 47023*/ OPC_EmitMergeInputChains1_0, |
| 23362 | /* 47024*/ OPC_EmitInteger, MVT::i32, 0, |
| 23363 | /* 47027*/ OPC_EmitInteger, MVT::i32, 0, |
| 23364 | /* 47030*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23365 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 23366 | /* 47037*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23367 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 23368 | // Src: (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_32>> - Complexity = 10 |
| 23369 | // Dst: (ATOMIC_RMW_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 23370 | /* 47047*/ /*Scope*/ 26, /*->47074*/ |
| 23371 | /* 47048*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23372 | /* 47050*/ OPC_EmitMergeInputChains1_0, |
| 23373 | /* 47051*/ OPC_EmitInteger, MVT::i32, 0, |
| 23374 | /* 47054*/ OPC_EmitInteger, MVT::i64, 0, |
| 23375 | /* 47057*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23376 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 23377 | /* 47064*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23378 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 23379 | // Src: (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_32>> - Complexity = 10 |
| 23380 | // Dst: (ATOMIC_RMW_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 23381 | /* 47074*/ 0, /*End of Scope*/ |
| 23382 | /* 47075*/ /*Scope*/ 58, /*->47134*/ |
| 23383 | /* 47076*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 23384 | /* 47078*/ OPC_Scope, 26, /*->47106*/ // 2 children in Scope |
| 23385 | /* 47080*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23386 | /* 47082*/ OPC_EmitMergeInputChains1_0, |
| 23387 | /* 47083*/ OPC_EmitInteger, MVT::i32, 0, |
| 23388 | /* 47086*/ OPC_EmitInteger, MVT::i32, 0, |
| 23389 | /* 47089*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23390 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 23391 | /* 47096*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23392 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 23393 | // Src: (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>> - Complexity = 10 |
| 23394 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 23395 | /* 47106*/ /*Scope*/ 26, /*->47133*/ |
| 23396 | /* 47107*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23397 | /* 47109*/ OPC_EmitMergeInputChains1_0, |
| 23398 | /* 47110*/ OPC_EmitInteger, MVT::i32, 0, |
| 23399 | /* 47113*/ OPC_EmitInteger, MVT::i64, 0, |
| 23400 | /* 47116*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23401 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 23402 | /* 47123*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23403 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 23404 | // Src: (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>> - Complexity = 10 |
| 23405 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 23406 | /* 47133*/ 0, /*End of Scope*/ |
| 23407 | /* 47134*/ /*Scope*/ 58, /*->47193*/ |
| 23408 | /* 47135*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 23409 | /* 47137*/ OPC_Scope, 26, /*->47165*/ // 2 children in Scope |
| 23410 | /* 47139*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23411 | /* 47141*/ OPC_EmitMergeInputChains1_0, |
| 23412 | /* 47142*/ OPC_EmitInteger, MVT::i32, 0, |
| 23413 | /* 47145*/ OPC_EmitInteger, MVT::i32, 0, |
| 23414 | /* 47148*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23415 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 23416 | /* 47155*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23417 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 23418 | // Src: (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>> - Complexity = 10 |
| 23419 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 23420 | /* 47165*/ /*Scope*/ 26, /*->47192*/ |
| 23421 | /* 47166*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23422 | /* 47168*/ OPC_EmitMergeInputChains1_0, |
| 23423 | /* 47169*/ OPC_EmitInteger, MVT::i32, 0, |
| 23424 | /* 47172*/ OPC_EmitInteger, MVT::i64, 0, |
| 23425 | /* 47175*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23426 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 23427 | /* 47182*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23428 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 23429 | // Src: (atomic_load_sub:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>> - Complexity = 10 |
| 23430 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 23431 | /* 47192*/ 0, /*End of Scope*/ |
| 23432 | /* 47193*/ 0, /*End of Scope*/ |
| 23433 | /* 47194*/ /*SwitchType*/ 58, MVT::i64,// ->47254 |
| 23434 | /* 47196*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_sub_64 |
| 23435 | /* 47198*/ OPC_Scope, 26, /*->47226*/ // 2 children in Scope |
| 23436 | /* 47200*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23437 | /* 47202*/ OPC_EmitMergeInputChains1_0, |
| 23438 | /* 47203*/ OPC_EmitInteger, MVT::i32, 0, |
| 23439 | /* 47206*/ OPC_EmitInteger, MVT::i32, 0, |
| 23440 | /* 47209*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23441 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 23442 | /* 47216*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23443 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 23444 | // Src: (atomic_load_sub:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_sub_64>> - Complexity = 10 |
| 23445 | // Dst: (ATOMIC_RMW_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 23446 | /* 47226*/ /*Scope*/ 26, /*->47253*/ |
| 23447 | /* 47227*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23448 | /* 47229*/ OPC_EmitMergeInputChains1_0, |
| 23449 | /* 47230*/ OPC_EmitInteger, MVT::i32, 0, |
| 23450 | /* 47233*/ OPC_EmitInteger, MVT::i64, 0, |
| 23451 | /* 47236*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23452 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 23453 | /* 47243*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23454 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 23455 | // Src: (atomic_load_sub:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_sub_64>> - Complexity = 10 |
| 23456 | // Dst: (ATOMIC_RMW_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 23457 | /* 47253*/ 0, /*End of Scope*/ |
| 23458 | /* 47254*/ 0, // EndSwitchType |
| 23459 | /* 47255*/ 0, // EndSwitchOpcode |
| 23460 | /* 47256*/ /*Scope*/ 85|128,3/*469*/, /*->47727*/ |
| 23461 | /* 47258*/ OPC_RecordChild1, // #1 = $off |
| 23462 | /* 47259*/ OPC_Scope, 10|128,2/*266*/, /*->47528*/ // 3 children in Scope |
| 23463 | /* 47262*/ OPC_MoveChild1, |
| 23464 | /* 47263*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 23465 | /* 47266*/ OPC_MoveParent, |
| 23466 | /* 47267*/ OPC_RecordChild2, // #2 = $val |
| 23467 | /* 47268*/ OPC_SwitchType /*2 cases */, 63|128,1/*191*/, MVT::i32,// ->47463 |
| 23468 | /* 47272*/ OPC_Scope, 62, /*->47336*/ // 3 children in Scope |
| 23469 | /* 47274*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 23470 | /* 47276*/ OPC_Scope, 28, /*->47306*/ // 2 children in Scope |
| 23471 | /* 47278*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23472 | /* 47280*/ OPC_EmitMergeInputChains1_0, |
| 23473 | /* 47281*/ OPC_EmitInteger, MVT::i32, 0, |
| 23474 | /* 47284*/ OPC_EmitConvertToTarget, 1, |
| 23475 | /* 47286*/ OPC_EmitInteger, MVT::i32, 0, |
| 23476 | /* 47289*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23477 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 23478 | /* 47296*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23479 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 23480 | // Src: (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_32>> - Complexity = 7 |
| 23481 | // Dst: (ATOMIC_RMW_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 23482 | /* 47306*/ /*Scope*/ 28, /*->47335*/ |
| 23483 | /* 47307*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23484 | /* 47309*/ OPC_EmitMergeInputChains1_0, |
| 23485 | /* 47310*/ OPC_EmitInteger, MVT::i32, 0, |
| 23486 | /* 47313*/ OPC_EmitConvertToTarget, 1, |
| 23487 | /* 47315*/ OPC_EmitInteger, MVT::i64, 0, |
| 23488 | /* 47318*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23489 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 23490 | /* 47325*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23491 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 23492 | // Src: (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_32>> - Complexity = 7 |
| 23493 | // Dst: (ATOMIC_RMW_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 23494 | /* 47335*/ 0, /*End of Scope*/ |
| 23495 | /* 47336*/ /*Scope*/ 62, /*->47399*/ |
| 23496 | /* 47337*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 23497 | /* 47339*/ OPC_Scope, 28, /*->47369*/ // 2 children in Scope |
| 23498 | /* 47341*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23499 | /* 47343*/ OPC_EmitMergeInputChains1_0, |
| 23500 | /* 47344*/ OPC_EmitInteger, MVT::i32, 0, |
| 23501 | /* 47347*/ OPC_EmitConvertToTarget, 1, |
| 23502 | /* 47349*/ OPC_EmitInteger, MVT::i32, 0, |
| 23503 | /* 47352*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23504 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 23505 | /* 47359*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23506 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 23507 | // Src: (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>> - Complexity = 7 |
| 23508 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 23509 | /* 47369*/ /*Scope*/ 28, /*->47398*/ |
| 23510 | /* 47370*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23511 | /* 47372*/ OPC_EmitMergeInputChains1_0, |
| 23512 | /* 47373*/ OPC_EmitInteger, MVT::i32, 0, |
| 23513 | /* 47376*/ OPC_EmitConvertToTarget, 1, |
| 23514 | /* 47378*/ OPC_EmitInteger, MVT::i64, 0, |
| 23515 | /* 47381*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23516 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 23517 | /* 47388*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23518 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 23519 | // Src: (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>> - Complexity = 7 |
| 23520 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 23521 | /* 47398*/ 0, /*End of Scope*/ |
| 23522 | /* 47399*/ /*Scope*/ 62, /*->47462*/ |
| 23523 | /* 47400*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 23524 | /* 47402*/ OPC_Scope, 28, /*->47432*/ // 2 children in Scope |
| 23525 | /* 47404*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23526 | /* 47406*/ OPC_EmitMergeInputChains1_0, |
| 23527 | /* 47407*/ OPC_EmitInteger, MVT::i32, 0, |
| 23528 | /* 47410*/ OPC_EmitConvertToTarget, 1, |
| 23529 | /* 47412*/ OPC_EmitInteger, MVT::i32, 0, |
| 23530 | /* 47415*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23531 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 23532 | /* 47422*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23533 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 23534 | // Src: (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>> - Complexity = 7 |
| 23535 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 23536 | /* 47432*/ /*Scope*/ 28, /*->47461*/ |
| 23537 | /* 47433*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23538 | /* 47435*/ OPC_EmitMergeInputChains1_0, |
| 23539 | /* 47436*/ OPC_EmitInteger, MVT::i32, 0, |
| 23540 | /* 47439*/ OPC_EmitConvertToTarget, 1, |
| 23541 | /* 47441*/ OPC_EmitInteger, MVT::i64, 0, |
| 23542 | /* 47444*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23543 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 23544 | /* 47451*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23545 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 23546 | // Src: (atomic_load_sub:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>> - Complexity = 7 |
| 23547 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 23548 | /* 47461*/ 0, /*End of Scope*/ |
| 23549 | /* 47462*/ 0, /*End of Scope*/ |
| 23550 | /* 47463*/ /*SwitchType*/ 62, MVT::i64,// ->47527 |
| 23551 | /* 47465*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_sub_64 |
| 23552 | /* 47467*/ OPC_Scope, 28, /*->47497*/ // 2 children in Scope |
| 23553 | /* 47469*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23554 | /* 47471*/ OPC_EmitMergeInputChains1_0, |
| 23555 | /* 47472*/ OPC_EmitInteger, MVT::i32, 0, |
| 23556 | /* 47475*/ OPC_EmitConvertToTarget, 1, |
| 23557 | /* 47477*/ OPC_EmitInteger, MVT::i32, 0, |
| 23558 | /* 47480*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23559 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 23560 | /* 47487*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23561 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 23562 | // Src: (atomic_load_sub:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_sub_64>> - Complexity = 7 |
| 23563 | // Dst: (ATOMIC_RMW_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 23564 | /* 47497*/ /*Scope*/ 28, /*->47526*/ |
| 23565 | /* 47498*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23566 | /* 47500*/ OPC_EmitMergeInputChains1_0, |
| 23567 | /* 47501*/ OPC_EmitInteger, MVT::i32, 0, |
| 23568 | /* 47504*/ OPC_EmitConvertToTarget, 1, |
| 23569 | /* 47506*/ OPC_EmitInteger, MVT::i64, 0, |
| 23570 | /* 47509*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23571 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 23572 | /* 47516*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23573 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 23574 | // Src: (atomic_load_sub:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_sub_64>> - Complexity = 7 |
| 23575 | // Dst: (ATOMIC_RMW_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 23576 | /* 47526*/ 0, /*End of Scope*/ |
| 23577 | /* 47527*/ 0, // EndSwitchType |
| 23578 | /* 47528*/ /*Scope*/ 98, /*->47627*/ |
| 23579 | /* 47529*/ OPC_CheckChild1Type, MVT::i32, |
| 23580 | /* 47531*/ OPC_RecordChild2, // #2 = $val |
| 23581 | /* 47532*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->47603 |
| 23582 | /* 47535*/ OPC_Scope, 21, /*->47558*/ // 3 children in Scope |
| 23583 | /* 47537*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 23584 | /* 47539*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23585 | /* 47541*/ OPC_EmitMergeInputChains1_0, |
| 23586 | /* 47542*/ OPC_EmitInteger, MVT::i32, 0, |
| 23587 | /* 47545*/ OPC_EmitInteger, MVT::i32, 0, |
| 23588 | /* 47548*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23589 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 23590 | // Src: (atomic_load_sub:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_32>> - Complexity = 4 |
| 23591 | // Dst: (ATOMIC_RMW_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23592 | /* 47558*/ /*Scope*/ 21, /*->47580*/ |
| 23593 | /* 47559*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 23594 | /* 47561*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23595 | /* 47563*/ OPC_EmitMergeInputChains1_0, |
| 23596 | /* 47564*/ OPC_EmitInteger, MVT::i32, 0, |
| 23597 | /* 47567*/ OPC_EmitInteger, MVT::i32, 0, |
| 23598 | /* 47570*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23599 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 23600 | // Src: (atomic_load_sub:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>> - Complexity = 4 |
| 23601 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23602 | /* 47580*/ /*Scope*/ 21, /*->47602*/ |
| 23603 | /* 47581*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 23604 | /* 47583*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23605 | /* 47585*/ OPC_EmitMergeInputChains1_0, |
| 23606 | /* 47586*/ OPC_EmitInteger, MVT::i32, 0, |
| 23607 | /* 47589*/ OPC_EmitInteger, MVT::i32, 0, |
| 23608 | /* 47592*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23609 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 23610 | // Src: (atomic_load_sub:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>> - Complexity = 4 |
| 23611 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23612 | /* 47602*/ 0, /*End of Scope*/ |
| 23613 | /* 47603*/ /*SwitchType*/ 21, MVT::i64,// ->47626 |
| 23614 | /* 47605*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_sub_64 |
| 23615 | /* 47607*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23616 | /* 47609*/ OPC_EmitMergeInputChains1_0, |
| 23617 | /* 47610*/ OPC_EmitInteger, MVT::i32, 0, |
| 23618 | /* 47613*/ OPC_EmitInteger, MVT::i32, 0, |
| 23619 | /* 47616*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23620 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 23621 | // Src: (atomic_load_sub:{ *:[i64] } I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_sub_64>> - Complexity = 4 |
| 23622 | // Dst: (ATOMIC_RMW_SUB_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 23623 | /* 47626*/ 0, // EndSwitchType |
| 23624 | /* 47627*/ /*Scope*/ 98, /*->47726*/ |
| 23625 | /* 47628*/ OPC_CheckChild1Type, MVT::i64, |
| 23626 | /* 47630*/ OPC_RecordChild2, // #2 = $val |
| 23627 | /* 47631*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->47702 |
| 23628 | /* 47634*/ OPC_Scope, 21, /*->47657*/ // 3 children in Scope |
| 23629 | /* 47636*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_sub_32 |
| 23630 | /* 47638*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23631 | /* 47640*/ OPC_EmitMergeInputChains1_0, |
| 23632 | /* 47641*/ OPC_EmitInteger, MVT::i32, 0, |
| 23633 | /* 47644*/ OPC_EmitInteger, MVT::i64, 0, |
| 23634 | /* 47647*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23635 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 23636 | // Src: (atomic_load_sub:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_32>> - Complexity = 4 |
| 23637 | // Dst: (ATOMIC_RMW_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23638 | /* 47657*/ /*Scope*/ 21, /*->47679*/ |
| 23639 | /* 47658*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_sub_8 |
| 23640 | /* 47660*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23641 | /* 47662*/ OPC_EmitMergeInputChains1_0, |
| 23642 | /* 47663*/ OPC_EmitInteger, MVT::i32, 0, |
| 23643 | /* 47666*/ OPC_EmitInteger, MVT::i64, 0, |
| 23644 | /* 47669*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23645 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 23646 | // Src: (atomic_load_sub:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_8>> - Complexity = 4 |
| 23647 | // Dst: (ATOMIC_RMW8_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23648 | /* 47679*/ /*Scope*/ 21, /*->47701*/ |
| 23649 | /* 47680*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_sub_16 |
| 23650 | /* 47682*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23651 | /* 47684*/ OPC_EmitMergeInputChains1_0, |
| 23652 | /* 47685*/ OPC_EmitInteger, MVT::i32, 0, |
| 23653 | /* 47688*/ OPC_EmitInteger, MVT::i64, 0, |
| 23654 | /* 47691*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23655 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 23656 | // Src: (atomic_load_sub:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_sub_16>> - Complexity = 4 |
| 23657 | // Dst: (ATOMIC_RMW16_U_SUB_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23658 | /* 47701*/ 0, /*End of Scope*/ |
| 23659 | /* 47702*/ /*SwitchType*/ 21, MVT::i64,// ->47725 |
| 23660 | /* 47704*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_sub_64 |
| 23661 | /* 47706*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23662 | /* 47708*/ OPC_EmitMergeInputChains1_0, |
| 23663 | /* 47709*/ OPC_EmitInteger, MVT::i32, 0, |
| 23664 | /* 47712*/ OPC_EmitInteger, MVT::i64, 0, |
| 23665 | /* 47715*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23666 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 23667 | // Src: (atomic_load_sub:{ *:[i64] } I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_sub_64>> - Complexity = 4 |
| 23668 | // Dst: (ATOMIC_RMW_SUB_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 23669 | /* 47725*/ 0, // EndSwitchType |
| 23670 | /* 47726*/ 0, /*End of Scope*/ |
| 23671 | /* 47727*/ 0, /*End of Scope*/ |
| 23672 | /* 47728*/ /*SwitchOpcode*/ 122|128,8/*1146*/, TARGET_VAL(ISD::ATOMIC_LOAD_AND),// ->48878 |
| 23673 | /* 47732*/ OPC_RecordMemRef, |
| 23674 | /* 47733*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node |
| 23675 | /* 47734*/ OPC_Scope, 29|128,5/*669*/, /*->48406*/ // 2 children in Scope |
| 23676 | /* 47737*/ OPC_MoveChild1, |
| 23677 | /* 47738*/ OPC_SwitchOpcode /*3 cases */, 73|128,1/*201*/, TARGET_VAL(ISD::ADD),// ->47944 |
| 23678 | /* 47743*/ OPC_RecordChild0, // #1 = $addr |
| 23679 | /* 47744*/ OPC_RecordChild1, // #2 = $off |
| 23680 | /* 47745*/ OPC_MoveChild1, |
| 23681 | /* 47746*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 23682 | /* 47749*/ OPC_MoveParent, |
| 23683 | /* 47750*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 23684 | /* 47752*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->47848 |
| 23685 | /* 47755*/ OPC_MoveParent, |
| 23686 | /* 47756*/ OPC_RecordChild2, // #3 = $val |
| 23687 | /* 47757*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->47825 |
| 23688 | /* 47760*/ OPC_Scope, 20, /*->47782*/ // 3 children in Scope |
| 23689 | /* 47762*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 23690 | /* 47764*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23691 | /* 47766*/ OPC_EmitMergeInputChains1_0, |
| 23692 | /* 47767*/ OPC_EmitInteger, MVT::i32, 0, |
| 23693 | /* 47770*/ OPC_EmitConvertToTarget, 2, |
| 23694 | /* 47772*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23695 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23696 | // Src: (atomic_load_and:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_32>> - Complexity = 11 |
| 23697 | // Dst: (ATOMIC_RMW_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23698 | /* 47782*/ /*Scope*/ 20, /*->47803*/ |
| 23699 | /* 47783*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 23700 | /* 47785*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23701 | /* 47787*/ OPC_EmitMergeInputChains1_0, |
| 23702 | /* 47788*/ OPC_EmitInteger, MVT::i32, 0, |
| 23703 | /* 47791*/ OPC_EmitConvertToTarget, 2, |
| 23704 | /* 47793*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23705 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23706 | // Src: (atomic_load_and:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>> - Complexity = 11 |
| 23707 | // Dst: (ATOMIC_RMW8_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23708 | /* 47803*/ /*Scope*/ 20, /*->47824*/ |
| 23709 | /* 47804*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 23710 | /* 47806*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23711 | /* 47808*/ OPC_EmitMergeInputChains1_0, |
| 23712 | /* 47809*/ OPC_EmitInteger, MVT::i32, 0, |
| 23713 | /* 47812*/ OPC_EmitConvertToTarget, 2, |
| 23714 | /* 47814*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23715 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23716 | // Src: (atomic_load_and:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>> - Complexity = 11 |
| 23717 | // Dst: (ATOMIC_RMW16_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23718 | /* 47824*/ 0, /*End of Scope*/ |
| 23719 | /* 47825*/ /*SwitchType*/ 20, MVT::i64,// ->47847 |
| 23720 | /* 47827*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_and_64 |
| 23721 | /* 47829*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23722 | /* 47831*/ OPC_EmitMergeInputChains1_0, |
| 23723 | /* 47832*/ OPC_EmitInteger, MVT::i32, 0, |
| 23724 | /* 47835*/ OPC_EmitConvertToTarget, 2, |
| 23725 | /* 47837*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23726 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 23727 | // Src: (atomic_load_and:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_and_64>> - Complexity = 11 |
| 23728 | // Dst: (ATOMIC_RMW_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 23729 | /* 47847*/ 0, // EndSwitchType |
| 23730 | /* 47848*/ /*SwitchType*/ 93, MVT::i64,// ->47943 |
| 23731 | /* 47850*/ OPC_MoveParent, |
| 23732 | /* 47851*/ OPC_RecordChild2, // #3 = $val |
| 23733 | /* 47852*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->47920 |
| 23734 | /* 47855*/ OPC_Scope, 20, /*->47877*/ // 3 children in Scope |
| 23735 | /* 47857*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 23736 | /* 47859*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23737 | /* 47861*/ OPC_EmitMergeInputChains1_0, |
| 23738 | /* 47862*/ OPC_EmitInteger, MVT::i32, 0, |
| 23739 | /* 47865*/ OPC_EmitConvertToTarget, 2, |
| 23740 | /* 47867*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23741 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23742 | // Src: (atomic_load_and:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_32>> - Complexity = 11 |
| 23743 | // Dst: (ATOMIC_RMW_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23744 | /* 47877*/ /*Scope*/ 20, /*->47898*/ |
| 23745 | /* 47878*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 23746 | /* 47880*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23747 | /* 47882*/ OPC_EmitMergeInputChains1_0, |
| 23748 | /* 47883*/ OPC_EmitInteger, MVT::i32, 0, |
| 23749 | /* 47886*/ OPC_EmitConvertToTarget, 2, |
| 23750 | /* 47888*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23751 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23752 | // Src: (atomic_load_and:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>> - Complexity = 11 |
| 23753 | // Dst: (ATOMIC_RMW8_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23754 | /* 47898*/ /*Scope*/ 20, /*->47919*/ |
| 23755 | /* 47899*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 23756 | /* 47901*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23757 | /* 47903*/ OPC_EmitMergeInputChains1_0, |
| 23758 | /* 47904*/ OPC_EmitInteger, MVT::i32, 0, |
| 23759 | /* 47907*/ OPC_EmitConvertToTarget, 2, |
| 23760 | /* 47909*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23761 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23762 | // Src: (atomic_load_and:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>> - Complexity = 11 |
| 23763 | // Dst: (ATOMIC_RMW16_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23764 | /* 47919*/ 0, /*End of Scope*/ |
| 23765 | /* 47920*/ /*SwitchType*/ 20, MVT::i64,// ->47942 |
| 23766 | /* 47922*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_and_64 |
| 23767 | /* 47924*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23768 | /* 47926*/ OPC_EmitMergeInputChains1_0, |
| 23769 | /* 47927*/ OPC_EmitInteger, MVT::i32, 0, |
| 23770 | /* 47930*/ OPC_EmitConvertToTarget, 2, |
| 23771 | /* 47932*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23772 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 23773 | // Src: (atomic_load_and:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_and_64>> - Complexity = 11 |
| 23774 | // Dst: (ATOMIC_RMW_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 23775 | /* 47942*/ 0, // EndSwitchType |
| 23776 | /* 47943*/ 0, // EndSwitchType |
| 23777 | /* 47944*/ /*SwitchOpcode*/ 73|128,1/*201*/, TARGET_VAL(ISD::OR),// ->48149 |
| 23778 | /* 47948*/ OPC_RecordChild0, // #1 = $addr |
| 23779 | /* 47949*/ OPC_RecordChild1, // #2 = $off |
| 23780 | /* 47950*/ OPC_MoveChild1, |
| 23781 | /* 47951*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 23782 | /* 47954*/ OPC_MoveParent, |
| 23783 | /* 47955*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 23784 | /* 47957*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->48053 |
| 23785 | /* 47960*/ OPC_MoveParent, |
| 23786 | /* 47961*/ OPC_RecordChild2, // #3 = $val |
| 23787 | /* 47962*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->48030 |
| 23788 | /* 47965*/ OPC_Scope, 20, /*->47987*/ // 3 children in Scope |
| 23789 | /* 47967*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 23790 | /* 47969*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23791 | /* 47971*/ OPC_EmitMergeInputChains1_0, |
| 23792 | /* 47972*/ OPC_EmitInteger, MVT::i32, 0, |
| 23793 | /* 47975*/ OPC_EmitConvertToTarget, 2, |
| 23794 | /* 47977*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23795 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23796 | // Src: (atomic_load_and:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_32>> - Complexity = 11 |
| 23797 | // Dst: (ATOMIC_RMW_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23798 | /* 47987*/ /*Scope*/ 20, /*->48008*/ |
| 23799 | /* 47988*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 23800 | /* 47990*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23801 | /* 47992*/ OPC_EmitMergeInputChains1_0, |
| 23802 | /* 47993*/ OPC_EmitInteger, MVT::i32, 0, |
| 23803 | /* 47996*/ OPC_EmitConvertToTarget, 2, |
| 23804 | /* 47998*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23805 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23806 | // Src: (atomic_load_and:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>> - Complexity = 11 |
| 23807 | // Dst: (ATOMIC_RMW8_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23808 | /* 48008*/ /*Scope*/ 20, /*->48029*/ |
| 23809 | /* 48009*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 23810 | /* 48011*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23811 | /* 48013*/ OPC_EmitMergeInputChains1_0, |
| 23812 | /* 48014*/ OPC_EmitInteger, MVT::i32, 0, |
| 23813 | /* 48017*/ OPC_EmitConvertToTarget, 2, |
| 23814 | /* 48019*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23815 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23816 | // Src: (atomic_load_and:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>> - Complexity = 11 |
| 23817 | // Dst: (ATOMIC_RMW16_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 23818 | /* 48029*/ 0, /*End of Scope*/ |
| 23819 | /* 48030*/ /*SwitchType*/ 20, MVT::i64,// ->48052 |
| 23820 | /* 48032*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_and_64 |
| 23821 | /* 48034*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23822 | /* 48036*/ OPC_EmitMergeInputChains1_0, |
| 23823 | /* 48037*/ OPC_EmitInteger, MVT::i32, 0, |
| 23824 | /* 48040*/ OPC_EmitConvertToTarget, 2, |
| 23825 | /* 48042*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23826 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 23827 | // Src: (atomic_load_and:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_and_64>> - Complexity = 11 |
| 23828 | // Dst: (ATOMIC_RMW_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 23829 | /* 48052*/ 0, // EndSwitchType |
| 23830 | /* 48053*/ /*SwitchType*/ 93, MVT::i64,// ->48148 |
| 23831 | /* 48055*/ OPC_MoveParent, |
| 23832 | /* 48056*/ OPC_RecordChild2, // #3 = $val |
| 23833 | /* 48057*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->48125 |
| 23834 | /* 48060*/ OPC_Scope, 20, /*->48082*/ // 3 children in Scope |
| 23835 | /* 48062*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 23836 | /* 48064*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23837 | /* 48066*/ OPC_EmitMergeInputChains1_0, |
| 23838 | /* 48067*/ OPC_EmitInteger, MVT::i32, 0, |
| 23839 | /* 48070*/ OPC_EmitConvertToTarget, 2, |
| 23840 | /* 48072*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23841 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23842 | // Src: (atomic_load_and:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_32>> - Complexity = 11 |
| 23843 | // Dst: (ATOMIC_RMW_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23844 | /* 48082*/ /*Scope*/ 20, /*->48103*/ |
| 23845 | /* 48083*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 23846 | /* 48085*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23847 | /* 48087*/ OPC_EmitMergeInputChains1_0, |
| 23848 | /* 48088*/ OPC_EmitInteger, MVT::i32, 0, |
| 23849 | /* 48091*/ OPC_EmitConvertToTarget, 2, |
| 23850 | /* 48093*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23851 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23852 | // Src: (atomic_load_and:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>> - Complexity = 11 |
| 23853 | // Dst: (ATOMIC_RMW8_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23854 | /* 48103*/ /*Scope*/ 20, /*->48124*/ |
| 23855 | /* 48104*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 23856 | /* 48106*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23857 | /* 48108*/ OPC_EmitMergeInputChains1_0, |
| 23858 | /* 48109*/ OPC_EmitInteger, MVT::i32, 0, |
| 23859 | /* 48112*/ OPC_EmitConvertToTarget, 2, |
| 23860 | /* 48114*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23861 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 23862 | // Src: (atomic_load_and:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>> - Complexity = 11 |
| 23863 | // Dst: (ATOMIC_RMW16_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 23864 | /* 48124*/ 0, /*End of Scope*/ |
| 23865 | /* 48125*/ /*SwitchType*/ 20, MVT::i64,// ->48147 |
| 23866 | /* 48127*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_and_64 |
| 23867 | /* 48129*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 23868 | /* 48131*/ OPC_EmitMergeInputChains1_0, |
| 23869 | /* 48132*/ OPC_EmitInteger, MVT::i32, 0, |
| 23870 | /* 48135*/ OPC_EmitConvertToTarget, 2, |
| 23871 | /* 48137*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23872 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 23873 | // Src: (atomic_load_and:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_and_64>> - Complexity = 11 |
| 23874 | // Dst: (ATOMIC_RMW_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 23875 | /* 48147*/ 0, // EndSwitchType |
| 23876 | /* 48148*/ 0, // EndSwitchType |
| 23877 | /* 48149*/ /*SwitchOpcode*/ 124|128,1/*252*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->48405 |
| 23878 | /* 48153*/ OPC_RecordChild0, // #1 = $off |
| 23879 | /* 48154*/ OPC_MoveChild0, |
| 23880 | /* 48155*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 23881 | /* 48158*/ OPC_MoveParent, |
| 23882 | /* 48159*/ OPC_MoveParent, |
| 23883 | /* 48160*/ OPC_RecordChild2, // #2 = $val |
| 23884 | /* 48161*/ OPC_SwitchType /*2 cases */, 51|128,1/*179*/, MVT::i32,// ->48344 |
| 23885 | /* 48165*/ OPC_Scope, 58, /*->48225*/ // 3 children in Scope |
| 23886 | /* 48167*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 23887 | /* 48169*/ OPC_Scope, 26, /*->48197*/ // 2 children in Scope |
| 23888 | /* 48171*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23889 | /* 48173*/ OPC_EmitMergeInputChains1_0, |
| 23890 | /* 48174*/ OPC_EmitInteger, MVT::i32, 0, |
| 23891 | /* 48177*/ OPC_EmitInteger, MVT::i32, 0, |
| 23892 | /* 48180*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23893 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 23894 | /* 48187*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23895 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 23896 | // Src: (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_32>> - Complexity = 10 |
| 23897 | // Dst: (ATOMIC_RMW_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 23898 | /* 48197*/ /*Scope*/ 26, /*->48224*/ |
| 23899 | /* 48198*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23900 | /* 48200*/ OPC_EmitMergeInputChains1_0, |
| 23901 | /* 48201*/ OPC_EmitInteger, MVT::i32, 0, |
| 23902 | /* 48204*/ OPC_EmitInteger, MVT::i64, 0, |
| 23903 | /* 48207*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23904 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 23905 | /* 48214*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23906 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 23907 | // Src: (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_32>> - Complexity = 10 |
| 23908 | // Dst: (ATOMIC_RMW_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 23909 | /* 48224*/ 0, /*End of Scope*/ |
| 23910 | /* 48225*/ /*Scope*/ 58, /*->48284*/ |
| 23911 | /* 48226*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 23912 | /* 48228*/ OPC_Scope, 26, /*->48256*/ // 2 children in Scope |
| 23913 | /* 48230*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23914 | /* 48232*/ OPC_EmitMergeInputChains1_0, |
| 23915 | /* 48233*/ OPC_EmitInteger, MVT::i32, 0, |
| 23916 | /* 48236*/ OPC_EmitInteger, MVT::i32, 0, |
| 23917 | /* 48239*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23918 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 23919 | /* 48246*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23920 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 23921 | // Src: (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>> - Complexity = 10 |
| 23922 | // Dst: (ATOMIC_RMW8_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 23923 | /* 48256*/ /*Scope*/ 26, /*->48283*/ |
| 23924 | /* 48257*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23925 | /* 48259*/ OPC_EmitMergeInputChains1_0, |
| 23926 | /* 48260*/ OPC_EmitInteger, MVT::i32, 0, |
| 23927 | /* 48263*/ OPC_EmitInteger, MVT::i64, 0, |
| 23928 | /* 48266*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23929 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 23930 | /* 48273*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23931 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 23932 | // Src: (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>> - Complexity = 10 |
| 23933 | // Dst: (ATOMIC_RMW8_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 23934 | /* 48283*/ 0, /*End of Scope*/ |
| 23935 | /* 48284*/ /*Scope*/ 58, /*->48343*/ |
| 23936 | /* 48285*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 23937 | /* 48287*/ OPC_Scope, 26, /*->48315*/ // 2 children in Scope |
| 23938 | /* 48289*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23939 | /* 48291*/ OPC_EmitMergeInputChains1_0, |
| 23940 | /* 48292*/ OPC_EmitInteger, MVT::i32, 0, |
| 23941 | /* 48295*/ OPC_EmitInteger, MVT::i32, 0, |
| 23942 | /* 48298*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23943 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 23944 | /* 48305*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23945 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 23946 | // Src: (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>> - Complexity = 10 |
| 23947 | // Dst: (ATOMIC_RMW16_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 23948 | /* 48315*/ /*Scope*/ 26, /*->48342*/ |
| 23949 | /* 48316*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23950 | /* 48318*/ OPC_EmitMergeInputChains1_0, |
| 23951 | /* 48319*/ OPC_EmitInteger, MVT::i32, 0, |
| 23952 | /* 48322*/ OPC_EmitInteger, MVT::i64, 0, |
| 23953 | /* 48325*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23954 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 23955 | /* 48332*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23956 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 23957 | // Src: (atomic_load_and:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>> - Complexity = 10 |
| 23958 | // Dst: (ATOMIC_RMW16_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 23959 | /* 48342*/ 0, /*End of Scope*/ |
| 23960 | /* 48343*/ 0, /*End of Scope*/ |
| 23961 | /* 48344*/ /*SwitchType*/ 58, MVT::i64,// ->48404 |
| 23962 | /* 48346*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_and_64 |
| 23963 | /* 48348*/ OPC_Scope, 26, /*->48376*/ // 2 children in Scope |
| 23964 | /* 48350*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23965 | /* 48352*/ OPC_EmitMergeInputChains1_0, |
| 23966 | /* 48353*/ OPC_EmitInteger, MVT::i32, 0, |
| 23967 | /* 48356*/ OPC_EmitInteger, MVT::i32, 0, |
| 23968 | /* 48359*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 23969 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 23970 | /* 48366*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 23971 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 23972 | // Src: (atomic_load_and:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_and_64>> - Complexity = 10 |
| 23973 | // Dst: (ATOMIC_RMW_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 23974 | /* 48376*/ /*Scope*/ 26, /*->48403*/ |
| 23975 | /* 48377*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 23976 | /* 48379*/ OPC_EmitMergeInputChains1_0, |
| 23977 | /* 48380*/ OPC_EmitInteger, MVT::i32, 0, |
| 23978 | /* 48383*/ OPC_EmitInteger, MVT::i64, 0, |
| 23979 | /* 48386*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 23980 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 23981 | /* 48393*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 23982 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 23983 | // Src: (atomic_load_and:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_and_64>> - Complexity = 10 |
| 23984 | // Dst: (ATOMIC_RMW_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 23985 | /* 48403*/ 0, /*End of Scope*/ |
| 23986 | /* 48404*/ 0, // EndSwitchType |
| 23987 | /* 48405*/ 0, // EndSwitchOpcode |
| 23988 | /* 48406*/ /*Scope*/ 85|128,3/*469*/, /*->48877*/ |
| 23989 | /* 48408*/ OPC_RecordChild1, // #1 = $off |
| 23990 | /* 48409*/ OPC_Scope, 10|128,2/*266*/, /*->48678*/ // 3 children in Scope |
| 23991 | /* 48412*/ OPC_MoveChild1, |
| 23992 | /* 48413*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 23993 | /* 48416*/ OPC_MoveParent, |
| 23994 | /* 48417*/ OPC_RecordChild2, // #2 = $val |
| 23995 | /* 48418*/ OPC_SwitchType /*2 cases */, 63|128,1/*191*/, MVT::i32,// ->48613 |
| 23996 | /* 48422*/ OPC_Scope, 62, /*->48486*/ // 3 children in Scope |
| 23997 | /* 48424*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 23998 | /* 48426*/ OPC_Scope, 28, /*->48456*/ // 2 children in Scope |
| 23999 | /* 48428*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24000 | /* 48430*/ OPC_EmitMergeInputChains1_0, |
| 24001 | /* 48431*/ OPC_EmitInteger, MVT::i32, 0, |
| 24002 | /* 48434*/ OPC_EmitConvertToTarget, 1, |
| 24003 | /* 48436*/ OPC_EmitInteger, MVT::i32, 0, |
| 24004 | /* 48439*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24005 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 24006 | /* 48446*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24007 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 24008 | // Src: (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_32>> - Complexity = 7 |
| 24009 | // Dst: (ATOMIC_RMW_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 24010 | /* 48456*/ /*Scope*/ 28, /*->48485*/ |
| 24011 | /* 48457*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24012 | /* 48459*/ OPC_EmitMergeInputChains1_0, |
| 24013 | /* 48460*/ OPC_EmitInteger, MVT::i32, 0, |
| 24014 | /* 48463*/ OPC_EmitConvertToTarget, 1, |
| 24015 | /* 48465*/ OPC_EmitInteger, MVT::i64, 0, |
| 24016 | /* 48468*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24017 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 24018 | /* 48475*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24019 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 24020 | // Src: (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_32>> - Complexity = 7 |
| 24021 | // Dst: (ATOMIC_RMW_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 24022 | /* 48485*/ 0, /*End of Scope*/ |
| 24023 | /* 48486*/ /*Scope*/ 62, /*->48549*/ |
| 24024 | /* 48487*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 24025 | /* 48489*/ OPC_Scope, 28, /*->48519*/ // 2 children in Scope |
| 24026 | /* 48491*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24027 | /* 48493*/ OPC_EmitMergeInputChains1_0, |
| 24028 | /* 48494*/ OPC_EmitInteger, MVT::i32, 0, |
| 24029 | /* 48497*/ OPC_EmitConvertToTarget, 1, |
| 24030 | /* 48499*/ OPC_EmitInteger, MVT::i32, 0, |
| 24031 | /* 48502*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24032 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 24033 | /* 48509*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24034 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 24035 | // Src: (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>> - Complexity = 7 |
| 24036 | // Dst: (ATOMIC_RMW8_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 24037 | /* 48519*/ /*Scope*/ 28, /*->48548*/ |
| 24038 | /* 48520*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24039 | /* 48522*/ OPC_EmitMergeInputChains1_0, |
| 24040 | /* 48523*/ OPC_EmitInteger, MVT::i32, 0, |
| 24041 | /* 48526*/ OPC_EmitConvertToTarget, 1, |
| 24042 | /* 48528*/ OPC_EmitInteger, MVT::i64, 0, |
| 24043 | /* 48531*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24044 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 24045 | /* 48538*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24046 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 24047 | // Src: (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>> - Complexity = 7 |
| 24048 | // Dst: (ATOMIC_RMW8_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 24049 | /* 48548*/ 0, /*End of Scope*/ |
| 24050 | /* 48549*/ /*Scope*/ 62, /*->48612*/ |
| 24051 | /* 48550*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 24052 | /* 48552*/ OPC_Scope, 28, /*->48582*/ // 2 children in Scope |
| 24053 | /* 48554*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24054 | /* 48556*/ OPC_EmitMergeInputChains1_0, |
| 24055 | /* 48557*/ OPC_EmitInteger, MVT::i32, 0, |
| 24056 | /* 48560*/ OPC_EmitConvertToTarget, 1, |
| 24057 | /* 48562*/ OPC_EmitInteger, MVT::i32, 0, |
| 24058 | /* 48565*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24059 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 24060 | /* 48572*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24061 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 24062 | // Src: (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>> - Complexity = 7 |
| 24063 | // Dst: (ATOMIC_RMW16_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 24064 | /* 48582*/ /*Scope*/ 28, /*->48611*/ |
| 24065 | /* 48583*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24066 | /* 48585*/ OPC_EmitMergeInputChains1_0, |
| 24067 | /* 48586*/ OPC_EmitInteger, MVT::i32, 0, |
| 24068 | /* 48589*/ OPC_EmitConvertToTarget, 1, |
| 24069 | /* 48591*/ OPC_EmitInteger, MVT::i64, 0, |
| 24070 | /* 48594*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24071 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 24072 | /* 48601*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24073 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 24074 | // Src: (atomic_load_and:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>> - Complexity = 7 |
| 24075 | // Dst: (ATOMIC_RMW16_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 24076 | /* 48611*/ 0, /*End of Scope*/ |
| 24077 | /* 48612*/ 0, /*End of Scope*/ |
| 24078 | /* 48613*/ /*SwitchType*/ 62, MVT::i64,// ->48677 |
| 24079 | /* 48615*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_and_64 |
| 24080 | /* 48617*/ OPC_Scope, 28, /*->48647*/ // 2 children in Scope |
| 24081 | /* 48619*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24082 | /* 48621*/ OPC_EmitMergeInputChains1_0, |
| 24083 | /* 48622*/ OPC_EmitInteger, MVT::i32, 0, |
| 24084 | /* 48625*/ OPC_EmitConvertToTarget, 1, |
| 24085 | /* 48627*/ OPC_EmitInteger, MVT::i32, 0, |
| 24086 | /* 48630*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24087 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 24088 | /* 48637*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24089 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 24090 | // Src: (atomic_load_and:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_and_64>> - Complexity = 7 |
| 24091 | // Dst: (ATOMIC_RMW_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 24092 | /* 48647*/ /*Scope*/ 28, /*->48676*/ |
| 24093 | /* 48648*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24094 | /* 48650*/ OPC_EmitMergeInputChains1_0, |
| 24095 | /* 48651*/ OPC_EmitInteger, MVT::i32, 0, |
| 24096 | /* 48654*/ OPC_EmitConvertToTarget, 1, |
| 24097 | /* 48656*/ OPC_EmitInteger, MVT::i64, 0, |
| 24098 | /* 48659*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24099 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 24100 | /* 48666*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24101 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 24102 | // Src: (atomic_load_and:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_and_64>> - Complexity = 7 |
| 24103 | // Dst: (ATOMIC_RMW_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 24104 | /* 48676*/ 0, /*End of Scope*/ |
| 24105 | /* 48677*/ 0, // EndSwitchType |
| 24106 | /* 48678*/ /*Scope*/ 98, /*->48777*/ |
| 24107 | /* 48679*/ OPC_CheckChild1Type, MVT::i32, |
| 24108 | /* 48681*/ OPC_RecordChild2, // #2 = $val |
| 24109 | /* 48682*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->48753 |
| 24110 | /* 48685*/ OPC_Scope, 21, /*->48708*/ // 3 children in Scope |
| 24111 | /* 48687*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 24112 | /* 48689*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24113 | /* 48691*/ OPC_EmitMergeInputChains1_0, |
| 24114 | /* 48692*/ OPC_EmitInteger, MVT::i32, 0, |
| 24115 | /* 48695*/ OPC_EmitInteger, MVT::i32, 0, |
| 24116 | /* 48698*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24117 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 24118 | // Src: (atomic_load_and:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_32>> - Complexity = 4 |
| 24119 | // Dst: (ATOMIC_RMW_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24120 | /* 48708*/ /*Scope*/ 21, /*->48730*/ |
| 24121 | /* 48709*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 24122 | /* 48711*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24123 | /* 48713*/ OPC_EmitMergeInputChains1_0, |
| 24124 | /* 48714*/ OPC_EmitInteger, MVT::i32, 0, |
| 24125 | /* 48717*/ OPC_EmitInteger, MVT::i32, 0, |
| 24126 | /* 48720*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24127 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 24128 | // Src: (atomic_load_and:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>> - Complexity = 4 |
| 24129 | // Dst: (ATOMIC_RMW8_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24130 | /* 48730*/ /*Scope*/ 21, /*->48752*/ |
| 24131 | /* 48731*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 24132 | /* 48733*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24133 | /* 48735*/ OPC_EmitMergeInputChains1_0, |
| 24134 | /* 48736*/ OPC_EmitInteger, MVT::i32, 0, |
| 24135 | /* 48739*/ OPC_EmitInteger, MVT::i32, 0, |
| 24136 | /* 48742*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24137 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 24138 | // Src: (atomic_load_and:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>> - Complexity = 4 |
| 24139 | // Dst: (ATOMIC_RMW16_U_AND_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24140 | /* 48752*/ 0, /*End of Scope*/ |
| 24141 | /* 48753*/ /*SwitchType*/ 21, MVT::i64,// ->48776 |
| 24142 | /* 48755*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_and_64 |
| 24143 | /* 48757*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24144 | /* 48759*/ OPC_EmitMergeInputChains1_0, |
| 24145 | /* 48760*/ OPC_EmitInteger, MVT::i32, 0, |
| 24146 | /* 48763*/ OPC_EmitInteger, MVT::i32, 0, |
| 24147 | /* 48766*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24148 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 24149 | // Src: (atomic_load_and:{ *:[i64] } I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_and_64>> - Complexity = 4 |
| 24150 | // Dst: (ATOMIC_RMW_AND_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 24151 | /* 48776*/ 0, // EndSwitchType |
| 24152 | /* 48777*/ /*Scope*/ 98, /*->48876*/ |
| 24153 | /* 48778*/ OPC_CheckChild1Type, MVT::i64, |
| 24154 | /* 48780*/ OPC_RecordChild2, // #2 = $val |
| 24155 | /* 48781*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->48852 |
| 24156 | /* 48784*/ OPC_Scope, 21, /*->48807*/ // 3 children in Scope |
| 24157 | /* 48786*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_and_32 |
| 24158 | /* 48788*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24159 | /* 48790*/ OPC_EmitMergeInputChains1_0, |
| 24160 | /* 48791*/ OPC_EmitInteger, MVT::i32, 0, |
| 24161 | /* 48794*/ OPC_EmitInteger, MVT::i64, 0, |
| 24162 | /* 48797*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24163 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 24164 | // Src: (atomic_load_and:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_32>> - Complexity = 4 |
| 24165 | // Dst: (ATOMIC_RMW_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24166 | /* 48807*/ /*Scope*/ 21, /*->48829*/ |
| 24167 | /* 48808*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_and_8 |
| 24168 | /* 48810*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24169 | /* 48812*/ OPC_EmitMergeInputChains1_0, |
| 24170 | /* 48813*/ OPC_EmitInteger, MVT::i32, 0, |
| 24171 | /* 48816*/ OPC_EmitInteger, MVT::i64, 0, |
| 24172 | /* 48819*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24173 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 24174 | // Src: (atomic_load_and:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_8>> - Complexity = 4 |
| 24175 | // Dst: (ATOMIC_RMW8_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24176 | /* 48829*/ /*Scope*/ 21, /*->48851*/ |
| 24177 | /* 48830*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_and_16 |
| 24178 | /* 48832*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24179 | /* 48834*/ OPC_EmitMergeInputChains1_0, |
| 24180 | /* 48835*/ OPC_EmitInteger, MVT::i32, 0, |
| 24181 | /* 48838*/ OPC_EmitInteger, MVT::i64, 0, |
| 24182 | /* 48841*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24183 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 24184 | // Src: (atomic_load_and:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_and_16>> - Complexity = 4 |
| 24185 | // Dst: (ATOMIC_RMW16_U_AND_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24186 | /* 48851*/ 0, /*End of Scope*/ |
| 24187 | /* 48852*/ /*SwitchType*/ 21, MVT::i64,// ->48875 |
| 24188 | /* 48854*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_and_64 |
| 24189 | /* 48856*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24190 | /* 48858*/ OPC_EmitMergeInputChains1_0, |
| 24191 | /* 48859*/ OPC_EmitInteger, MVT::i32, 0, |
| 24192 | /* 48862*/ OPC_EmitInteger, MVT::i64, 0, |
| 24193 | /* 48865*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24194 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 24195 | // Src: (atomic_load_and:{ *:[i64] } I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_and_64>> - Complexity = 4 |
| 24196 | // Dst: (ATOMIC_RMW_AND_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 24197 | /* 48875*/ 0, // EndSwitchType |
| 24198 | /* 48876*/ 0, /*End of Scope*/ |
| 24199 | /* 48877*/ 0, /*End of Scope*/ |
| 24200 | /* 48878*/ /*SwitchOpcode*/ 122|128,8/*1146*/, TARGET_VAL(ISD::ATOMIC_LOAD_OR),// ->50028 |
| 24201 | /* 48882*/ OPC_RecordMemRef, |
| 24202 | /* 48883*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node |
| 24203 | /* 48884*/ OPC_Scope, 29|128,5/*669*/, /*->49556*/ // 2 children in Scope |
| 24204 | /* 48887*/ OPC_MoveChild1, |
| 24205 | /* 48888*/ OPC_SwitchOpcode /*3 cases */, 73|128,1/*201*/, TARGET_VAL(ISD::ADD),// ->49094 |
| 24206 | /* 48893*/ OPC_RecordChild0, // #1 = $addr |
| 24207 | /* 48894*/ OPC_RecordChild1, // #2 = $off |
| 24208 | /* 48895*/ OPC_MoveChild1, |
| 24209 | /* 48896*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 24210 | /* 48899*/ OPC_MoveParent, |
| 24211 | /* 48900*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 24212 | /* 48902*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->48998 |
| 24213 | /* 48905*/ OPC_MoveParent, |
| 24214 | /* 48906*/ OPC_RecordChild2, // #3 = $val |
| 24215 | /* 48907*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->48975 |
| 24216 | /* 48910*/ OPC_Scope, 20, /*->48932*/ // 3 children in Scope |
| 24217 | /* 48912*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 24218 | /* 48914*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24219 | /* 48916*/ OPC_EmitMergeInputChains1_0, |
| 24220 | /* 48917*/ OPC_EmitInteger, MVT::i32, 0, |
| 24221 | /* 48920*/ OPC_EmitConvertToTarget, 2, |
| 24222 | /* 48922*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24223 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24224 | // Src: (atomic_load_or:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_32>> - Complexity = 11 |
| 24225 | // Dst: (ATOMIC_RMW_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24226 | /* 48932*/ /*Scope*/ 20, /*->48953*/ |
| 24227 | /* 48933*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 24228 | /* 48935*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24229 | /* 48937*/ OPC_EmitMergeInputChains1_0, |
| 24230 | /* 48938*/ OPC_EmitInteger, MVT::i32, 0, |
| 24231 | /* 48941*/ OPC_EmitConvertToTarget, 2, |
| 24232 | /* 48943*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24233 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24234 | // Src: (atomic_load_or:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>> - Complexity = 11 |
| 24235 | // Dst: (ATOMIC_RMW8_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24236 | /* 48953*/ /*Scope*/ 20, /*->48974*/ |
| 24237 | /* 48954*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 24238 | /* 48956*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24239 | /* 48958*/ OPC_EmitMergeInputChains1_0, |
| 24240 | /* 48959*/ OPC_EmitInteger, MVT::i32, 0, |
| 24241 | /* 48962*/ OPC_EmitConvertToTarget, 2, |
| 24242 | /* 48964*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24243 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24244 | // Src: (atomic_load_or:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>> - Complexity = 11 |
| 24245 | // Dst: (ATOMIC_RMW16_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24246 | /* 48974*/ 0, /*End of Scope*/ |
| 24247 | /* 48975*/ /*SwitchType*/ 20, MVT::i64,// ->48997 |
| 24248 | /* 48977*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_or_64 |
| 24249 | /* 48979*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24250 | /* 48981*/ OPC_EmitMergeInputChains1_0, |
| 24251 | /* 48982*/ OPC_EmitInteger, MVT::i32, 0, |
| 24252 | /* 48985*/ OPC_EmitConvertToTarget, 2, |
| 24253 | /* 48987*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24254 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 24255 | // Src: (atomic_load_or:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_or_64>> - Complexity = 11 |
| 24256 | // Dst: (ATOMIC_RMW_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 24257 | /* 48997*/ 0, // EndSwitchType |
| 24258 | /* 48998*/ /*SwitchType*/ 93, MVT::i64,// ->49093 |
| 24259 | /* 49000*/ OPC_MoveParent, |
| 24260 | /* 49001*/ OPC_RecordChild2, // #3 = $val |
| 24261 | /* 49002*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->49070 |
| 24262 | /* 49005*/ OPC_Scope, 20, /*->49027*/ // 3 children in Scope |
| 24263 | /* 49007*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 24264 | /* 49009*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24265 | /* 49011*/ OPC_EmitMergeInputChains1_0, |
| 24266 | /* 49012*/ OPC_EmitInteger, MVT::i32, 0, |
| 24267 | /* 49015*/ OPC_EmitConvertToTarget, 2, |
| 24268 | /* 49017*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24269 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24270 | // Src: (atomic_load_or:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_32>> - Complexity = 11 |
| 24271 | // Dst: (ATOMIC_RMW_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24272 | /* 49027*/ /*Scope*/ 20, /*->49048*/ |
| 24273 | /* 49028*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 24274 | /* 49030*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24275 | /* 49032*/ OPC_EmitMergeInputChains1_0, |
| 24276 | /* 49033*/ OPC_EmitInteger, MVT::i32, 0, |
| 24277 | /* 49036*/ OPC_EmitConvertToTarget, 2, |
| 24278 | /* 49038*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24279 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24280 | // Src: (atomic_load_or:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>> - Complexity = 11 |
| 24281 | // Dst: (ATOMIC_RMW8_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24282 | /* 49048*/ /*Scope*/ 20, /*->49069*/ |
| 24283 | /* 49049*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 24284 | /* 49051*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24285 | /* 49053*/ OPC_EmitMergeInputChains1_0, |
| 24286 | /* 49054*/ OPC_EmitInteger, MVT::i32, 0, |
| 24287 | /* 49057*/ OPC_EmitConvertToTarget, 2, |
| 24288 | /* 49059*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24289 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24290 | // Src: (atomic_load_or:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>> - Complexity = 11 |
| 24291 | // Dst: (ATOMIC_RMW16_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24292 | /* 49069*/ 0, /*End of Scope*/ |
| 24293 | /* 49070*/ /*SwitchType*/ 20, MVT::i64,// ->49092 |
| 24294 | /* 49072*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_or_64 |
| 24295 | /* 49074*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24296 | /* 49076*/ OPC_EmitMergeInputChains1_0, |
| 24297 | /* 49077*/ OPC_EmitInteger, MVT::i32, 0, |
| 24298 | /* 49080*/ OPC_EmitConvertToTarget, 2, |
| 24299 | /* 49082*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24300 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 24301 | // Src: (atomic_load_or:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_or_64>> - Complexity = 11 |
| 24302 | // Dst: (ATOMIC_RMW_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 24303 | /* 49092*/ 0, // EndSwitchType |
| 24304 | /* 49093*/ 0, // EndSwitchType |
| 24305 | /* 49094*/ /*SwitchOpcode*/ 73|128,1/*201*/, TARGET_VAL(ISD::OR),// ->49299 |
| 24306 | /* 49098*/ OPC_RecordChild0, // #1 = $addr |
| 24307 | /* 49099*/ OPC_RecordChild1, // #2 = $off |
| 24308 | /* 49100*/ OPC_MoveChild1, |
| 24309 | /* 49101*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 24310 | /* 49104*/ OPC_MoveParent, |
| 24311 | /* 49105*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 24312 | /* 49107*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->49203 |
| 24313 | /* 49110*/ OPC_MoveParent, |
| 24314 | /* 49111*/ OPC_RecordChild2, // #3 = $val |
| 24315 | /* 49112*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->49180 |
| 24316 | /* 49115*/ OPC_Scope, 20, /*->49137*/ // 3 children in Scope |
| 24317 | /* 49117*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 24318 | /* 49119*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24319 | /* 49121*/ OPC_EmitMergeInputChains1_0, |
| 24320 | /* 49122*/ OPC_EmitInteger, MVT::i32, 0, |
| 24321 | /* 49125*/ OPC_EmitConvertToTarget, 2, |
| 24322 | /* 49127*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24323 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24324 | // Src: (atomic_load_or:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_32>> - Complexity = 11 |
| 24325 | // Dst: (ATOMIC_RMW_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24326 | /* 49137*/ /*Scope*/ 20, /*->49158*/ |
| 24327 | /* 49138*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 24328 | /* 49140*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24329 | /* 49142*/ OPC_EmitMergeInputChains1_0, |
| 24330 | /* 49143*/ OPC_EmitInteger, MVT::i32, 0, |
| 24331 | /* 49146*/ OPC_EmitConvertToTarget, 2, |
| 24332 | /* 49148*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24333 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24334 | // Src: (atomic_load_or:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>> - Complexity = 11 |
| 24335 | // Dst: (ATOMIC_RMW8_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24336 | /* 49158*/ /*Scope*/ 20, /*->49179*/ |
| 24337 | /* 49159*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 24338 | /* 49161*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24339 | /* 49163*/ OPC_EmitMergeInputChains1_0, |
| 24340 | /* 49164*/ OPC_EmitInteger, MVT::i32, 0, |
| 24341 | /* 49167*/ OPC_EmitConvertToTarget, 2, |
| 24342 | /* 49169*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24343 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24344 | // Src: (atomic_load_or:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>> - Complexity = 11 |
| 24345 | // Dst: (ATOMIC_RMW16_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24346 | /* 49179*/ 0, /*End of Scope*/ |
| 24347 | /* 49180*/ /*SwitchType*/ 20, MVT::i64,// ->49202 |
| 24348 | /* 49182*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_or_64 |
| 24349 | /* 49184*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24350 | /* 49186*/ OPC_EmitMergeInputChains1_0, |
| 24351 | /* 49187*/ OPC_EmitInteger, MVT::i32, 0, |
| 24352 | /* 49190*/ OPC_EmitConvertToTarget, 2, |
| 24353 | /* 49192*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24354 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 24355 | // Src: (atomic_load_or:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_or_64>> - Complexity = 11 |
| 24356 | // Dst: (ATOMIC_RMW_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 24357 | /* 49202*/ 0, // EndSwitchType |
| 24358 | /* 49203*/ /*SwitchType*/ 93, MVT::i64,// ->49298 |
| 24359 | /* 49205*/ OPC_MoveParent, |
| 24360 | /* 49206*/ OPC_RecordChild2, // #3 = $val |
| 24361 | /* 49207*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->49275 |
| 24362 | /* 49210*/ OPC_Scope, 20, /*->49232*/ // 3 children in Scope |
| 24363 | /* 49212*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 24364 | /* 49214*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24365 | /* 49216*/ OPC_EmitMergeInputChains1_0, |
| 24366 | /* 49217*/ OPC_EmitInteger, MVT::i32, 0, |
| 24367 | /* 49220*/ OPC_EmitConvertToTarget, 2, |
| 24368 | /* 49222*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24369 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24370 | // Src: (atomic_load_or:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_32>> - Complexity = 11 |
| 24371 | // Dst: (ATOMIC_RMW_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24372 | /* 49232*/ /*Scope*/ 20, /*->49253*/ |
| 24373 | /* 49233*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 24374 | /* 49235*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24375 | /* 49237*/ OPC_EmitMergeInputChains1_0, |
| 24376 | /* 49238*/ OPC_EmitInteger, MVT::i32, 0, |
| 24377 | /* 49241*/ OPC_EmitConvertToTarget, 2, |
| 24378 | /* 49243*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24379 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24380 | // Src: (atomic_load_or:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>> - Complexity = 11 |
| 24381 | // Dst: (ATOMIC_RMW8_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24382 | /* 49253*/ /*Scope*/ 20, /*->49274*/ |
| 24383 | /* 49254*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 24384 | /* 49256*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24385 | /* 49258*/ OPC_EmitMergeInputChains1_0, |
| 24386 | /* 49259*/ OPC_EmitInteger, MVT::i32, 0, |
| 24387 | /* 49262*/ OPC_EmitConvertToTarget, 2, |
| 24388 | /* 49264*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24389 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24390 | // Src: (atomic_load_or:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>> - Complexity = 11 |
| 24391 | // Dst: (ATOMIC_RMW16_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24392 | /* 49274*/ 0, /*End of Scope*/ |
| 24393 | /* 49275*/ /*SwitchType*/ 20, MVT::i64,// ->49297 |
| 24394 | /* 49277*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_or_64 |
| 24395 | /* 49279*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24396 | /* 49281*/ OPC_EmitMergeInputChains1_0, |
| 24397 | /* 49282*/ OPC_EmitInteger, MVT::i32, 0, |
| 24398 | /* 49285*/ OPC_EmitConvertToTarget, 2, |
| 24399 | /* 49287*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24400 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 24401 | // Src: (atomic_load_or:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_or_64>> - Complexity = 11 |
| 24402 | // Dst: (ATOMIC_RMW_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 24403 | /* 49297*/ 0, // EndSwitchType |
| 24404 | /* 49298*/ 0, // EndSwitchType |
| 24405 | /* 49299*/ /*SwitchOpcode*/ 124|128,1/*252*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->49555 |
| 24406 | /* 49303*/ OPC_RecordChild0, // #1 = $off |
| 24407 | /* 49304*/ OPC_MoveChild0, |
| 24408 | /* 49305*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 24409 | /* 49308*/ OPC_MoveParent, |
| 24410 | /* 49309*/ OPC_MoveParent, |
| 24411 | /* 49310*/ OPC_RecordChild2, // #2 = $val |
| 24412 | /* 49311*/ OPC_SwitchType /*2 cases */, 51|128,1/*179*/, MVT::i32,// ->49494 |
| 24413 | /* 49315*/ OPC_Scope, 58, /*->49375*/ // 3 children in Scope |
| 24414 | /* 49317*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 24415 | /* 49319*/ OPC_Scope, 26, /*->49347*/ // 2 children in Scope |
| 24416 | /* 49321*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24417 | /* 49323*/ OPC_EmitMergeInputChains1_0, |
| 24418 | /* 49324*/ OPC_EmitInteger, MVT::i32, 0, |
| 24419 | /* 49327*/ OPC_EmitInteger, MVT::i32, 0, |
| 24420 | /* 49330*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24421 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 24422 | /* 49337*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24423 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 24424 | // Src: (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_32>> - Complexity = 10 |
| 24425 | // Dst: (ATOMIC_RMW_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 24426 | /* 49347*/ /*Scope*/ 26, /*->49374*/ |
| 24427 | /* 49348*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24428 | /* 49350*/ OPC_EmitMergeInputChains1_0, |
| 24429 | /* 49351*/ OPC_EmitInteger, MVT::i32, 0, |
| 24430 | /* 49354*/ OPC_EmitInteger, MVT::i64, 0, |
| 24431 | /* 49357*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24432 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 24433 | /* 49364*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24434 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 24435 | // Src: (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_32>> - Complexity = 10 |
| 24436 | // Dst: (ATOMIC_RMW_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 24437 | /* 49374*/ 0, /*End of Scope*/ |
| 24438 | /* 49375*/ /*Scope*/ 58, /*->49434*/ |
| 24439 | /* 49376*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 24440 | /* 49378*/ OPC_Scope, 26, /*->49406*/ // 2 children in Scope |
| 24441 | /* 49380*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24442 | /* 49382*/ OPC_EmitMergeInputChains1_0, |
| 24443 | /* 49383*/ OPC_EmitInteger, MVT::i32, 0, |
| 24444 | /* 49386*/ OPC_EmitInteger, MVT::i32, 0, |
| 24445 | /* 49389*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24446 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 24447 | /* 49396*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24448 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 24449 | // Src: (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>> - Complexity = 10 |
| 24450 | // Dst: (ATOMIC_RMW8_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 24451 | /* 49406*/ /*Scope*/ 26, /*->49433*/ |
| 24452 | /* 49407*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24453 | /* 49409*/ OPC_EmitMergeInputChains1_0, |
| 24454 | /* 49410*/ OPC_EmitInteger, MVT::i32, 0, |
| 24455 | /* 49413*/ OPC_EmitInteger, MVT::i64, 0, |
| 24456 | /* 49416*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24457 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 24458 | /* 49423*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24459 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 24460 | // Src: (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>> - Complexity = 10 |
| 24461 | // Dst: (ATOMIC_RMW8_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 24462 | /* 49433*/ 0, /*End of Scope*/ |
| 24463 | /* 49434*/ /*Scope*/ 58, /*->49493*/ |
| 24464 | /* 49435*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 24465 | /* 49437*/ OPC_Scope, 26, /*->49465*/ // 2 children in Scope |
| 24466 | /* 49439*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24467 | /* 49441*/ OPC_EmitMergeInputChains1_0, |
| 24468 | /* 49442*/ OPC_EmitInteger, MVT::i32, 0, |
| 24469 | /* 49445*/ OPC_EmitInteger, MVT::i32, 0, |
| 24470 | /* 49448*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24471 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 24472 | /* 49455*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24473 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 24474 | // Src: (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>> - Complexity = 10 |
| 24475 | // Dst: (ATOMIC_RMW16_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 24476 | /* 49465*/ /*Scope*/ 26, /*->49492*/ |
| 24477 | /* 49466*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24478 | /* 49468*/ OPC_EmitMergeInputChains1_0, |
| 24479 | /* 49469*/ OPC_EmitInteger, MVT::i32, 0, |
| 24480 | /* 49472*/ OPC_EmitInteger, MVT::i64, 0, |
| 24481 | /* 49475*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24482 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 24483 | /* 49482*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24484 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 24485 | // Src: (atomic_load_or:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>> - Complexity = 10 |
| 24486 | // Dst: (ATOMIC_RMW16_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 24487 | /* 49492*/ 0, /*End of Scope*/ |
| 24488 | /* 49493*/ 0, /*End of Scope*/ |
| 24489 | /* 49494*/ /*SwitchType*/ 58, MVT::i64,// ->49554 |
| 24490 | /* 49496*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_or_64 |
| 24491 | /* 49498*/ OPC_Scope, 26, /*->49526*/ // 2 children in Scope |
| 24492 | /* 49500*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24493 | /* 49502*/ OPC_EmitMergeInputChains1_0, |
| 24494 | /* 49503*/ OPC_EmitInteger, MVT::i32, 0, |
| 24495 | /* 49506*/ OPC_EmitInteger, MVT::i32, 0, |
| 24496 | /* 49509*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24497 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 24498 | /* 49516*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24499 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 24500 | // Src: (atomic_load_or:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_or_64>> - Complexity = 10 |
| 24501 | // Dst: (ATOMIC_RMW_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 24502 | /* 49526*/ /*Scope*/ 26, /*->49553*/ |
| 24503 | /* 49527*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24504 | /* 49529*/ OPC_EmitMergeInputChains1_0, |
| 24505 | /* 49530*/ OPC_EmitInteger, MVT::i32, 0, |
| 24506 | /* 49533*/ OPC_EmitInteger, MVT::i64, 0, |
| 24507 | /* 49536*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24508 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 24509 | /* 49543*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24510 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 24511 | // Src: (atomic_load_or:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_or_64>> - Complexity = 10 |
| 24512 | // Dst: (ATOMIC_RMW_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 24513 | /* 49553*/ 0, /*End of Scope*/ |
| 24514 | /* 49554*/ 0, // EndSwitchType |
| 24515 | /* 49555*/ 0, // EndSwitchOpcode |
| 24516 | /* 49556*/ /*Scope*/ 85|128,3/*469*/, /*->50027*/ |
| 24517 | /* 49558*/ OPC_RecordChild1, // #1 = $off |
| 24518 | /* 49559*/ OPC_Scope, 10|128,2/*266*/, /*->49828*/ // 3 children in Scope |
| 24519 | /* 49562*/ OPC_MoveChild1, |
| 24520 | /* 49563*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 24521 | /* 49566*/ OPC_MoveParent, |
| 24522 | /* 49567*/ OPC_RecordChild2, // #2 = $val |
| 24523 | /* 49568*/ OPC_SwitchType /*2 cases */, 63|128,1/*191*/, MVT::i32,// ->49763 |
| 24524 | /* 49572*/ OPC_Scope, 62, /*->49636*/ // 3 children in Scope |
| 24525 | /* 49574*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 24526 | /* 49576*/ OPC_Scope, 28, /*->49606*/ // 2 children in Scope |
| 24527 | /* 49578*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24528 | /* 49580*/ OPC_EmitMergeInputChains1_0, |
| 24529 | /* 49581*/ OPC_EmitInteger, MVT::i32, 0, |
| 24530 | /* 49584*/ OPC_EmitConvertToTarget, 1, |
| 24531 | /* 49586*/ OPC_EmitInteger, MVT::i32, 0, |
| 24532 | /* 49589*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24533 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 24534 | /* 49596*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24535 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 24536 | // Src: (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_32>> - Complexity = 7 |
| 24537 | // Dst: (ATOMIC_RMW_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 24538 | /* 49606*/ /*Scope*/ 28, /*->49635*/ |
| 24539 | /* 49607*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24540 | /* 49609*/ OPC_EmitMergeInputChains1_0, |
| 24541 | /* 49610*/ OPC_EmitInteger, MVT::i32, 0, |
| 24542 | /* 49613*/ OPC_EmitConvertToTarget, 1, |
| 24543 | /* 49615*/ OPC_EmitInteger, MVT::i64, 0, |
| 24544 | /* 49618*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24545 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 24546 | /* 49625*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24547 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 24548 | // Src: (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_32>> - Complexity = 7 |
| 24549 | // Dst: (ATOMIC_RMW_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 24550 | /* 49635*/ 0, /*End of Scope*/ |
| 24551 | /* 49636*/ /*Scope*/ 62, /*->49699*/ |
| 24552 | /* 49637*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 24553 | /* 49639*/ OPC_Scope, 28, /*->49669*/ // 2 children in Scope |
| 24554 | /* 49641*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24555 | /* 49643*/ OPC_EmitMergeInputChains1_0, |
| 24556 | /* 49644*/ OPC_EmitInteger, MVT::i32, 0, |
| 24557 | /* 49647*/ OPC_EmitConvertToTarget, 1, |
| 24558 | /* 49649*/ OPC_EmitInteger, MVT::i32, 0, |
| 24559 | /* 49652*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24560 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 24561 | /* 49659*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24562 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 24563 | // Src: (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>> - Complexity = 7 |
| 24564 | // Dst: (ATOMIC_RMW8_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 24565 | /* 49669*/ /*Scope*/ 28, /*->49698*/ |
| 24566 | /* 49670*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24567 | /* 49672*/ OPC_EmitMergeInputChains1_0, |
| 24568 | /* 49673*/ OPC_EmitInteger, MVT::i32, 0, |
| 24569 | /* 49676*/ OPC_EmitConvertToTarget, 1, |
| 24570 | /* 49678*/ OPC_EmitInteger, MVT::i64, 0, |
| 24571 | /* 49681*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24572 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 24573 | /* 49688*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24574 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 24575 | // Src: (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>> - Complexity = 7 |
| 24576 | // Dst: (ATOMIC_RMW8_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 24577 | /* 49698*/ 0, /*End of Scope*/ |
| 24578 | /* 49699*/ /*Scope*/ 62, /*->49762*/ |
| 24579 | /* 49700*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 24580 | /* 49702*/ OPC_Scope, 28, /*->49732*/ // 2 children in Scope |
| 24581 | /* 49704*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24582 | /* 49706*/ OPC_EmitMergeInputChains1_0, |
| 24583 | /* 49707*/ OPC_EmitInteger, MVT::i32, 0, |
| 24584 | /* 49710*/ OPC_EmitConvertToTarget, 1, |
| 24585 | /* 49712*/ OPC_EmitInteger, MVT::i32, 0, |
| 24586 | /* 49715*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24587 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 24588 | /* 49722*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24589 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 24590 | // Src: (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>> - Complexity = 7 |
| 24591 | // Dst: (ATOMIC_RMW16_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 24592 | /* 49732*/ /*Scope*/ 28, /*->49761*/ |
| 24593 | /* 49733*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24594 | /* 49735*/ OPC_EmitMergeInputChains1_0, |
| 24595 | /* 49736*/ OPC_EmitInteger, MVT::i32, 0, |
| 24596 | /* 49739*/ OPC_EmitConvertToTarget, 1, |
| 24597 | /* 49741*/ OPC_EmitInteger, MVT::i64, 0, |
| 24598 | /* 49744*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24599 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 24600 | /* 49751*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24601 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 24602 | // Src: (atomic_load_or:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>> - Complexity = 7 |
| 24603 | // Dst: (ATOMIC_RMW16_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 24604 | /* 49761*/ 0, /*End of Scope*/ |
| 24605 | /* 49762*/ 0, /*End of Scope*/ |
| 24606 | /* 49763*/ /*SwitchType*/ 62, MVT::i64,// ->49827 |
| 24607 | /* 49765*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_or_64 |
| 24608 | /* 49767*/ OPC_Scope, 28, /*->49797*/ // 2 children in Scope |
| 24609 | /* 49769*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24610 | /* 49771*/ OPC_EmitMergeInputChains1_0, |
| 24611 | /* 49772*/ OPC_EmitInteger, MVT::i32, 0, |
| 24612 | /* 49775*/ OPC_EmitConvertToTarget, 1, |
| 24613 | /* 49777*/ OPC_EmitInteger, MVT::i32, 0, |
| 24614 | /* 49780*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24615 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 24616 | /* 49787*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24617 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 24618 | // Src: (atomic_load_or:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_or_64>> - Complexity = 7 |
| 24619 | // Dst: (ATOMIC_RMW_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 24620 | /* 49797*/ /*Scope*/ 28, /*->49826*/ |
| 24621 | /* 49798*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24622 | /* 49800*/ OPC_EmitMergeInputChains1_0, |
| 24623 | /* 49801*/ OPC_EmitInteger, MVT::i32, 0, |
| 24624 | /* 49804*/ OPC_EmitConvertToTarget, 1, |
| 24625 | /* 49806*/ OPC_EmitInteger, MVT::i64, 0, |
| 24626 | /* 49809*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24627 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 24628 | /* 49816*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24629 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 24630 | // Src: (atomic_load_or:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_or_64>> - Complexity = 7 |
| 24631 | // Dst: (ATOMIC_RMW_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 24632 | /* 49826*/ 0, /*End of Scope*/ |
| 24633 | /* 49827*/ 0, // EndSwitchType |
| 24634 | /* 49828*/ /*Scope*/ 98, /*->49927*/ |
| 24635 | /* 49829*/ OPC_CheckChild1Type, MVT::i32, |
| 24636 | /* 49831*/ OPC_RecordChild2, // #2 = $val |
| 24637 | /* 49832*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->49903 |
| 24638 | /* 49835*/ OPC_Scope, 21, /*->49858*/ // 3 children in Scope |
| 24639 | /* 49837*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 24640 | /* 49839*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24641 | /* 49841*/ OPC_EmitMergeInputChains1_0, |
| 24642 | /* 49842*/ OPC_EmitInteger, MVT::i32, 0, |
| 24643 | /* 49845*/ OPC_EmitInteger, MVT::i32, 0, |
| 24644 | /* 49848*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24645 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 24646 | // Src: (atomic_load_or:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_32>> - Complexity = 4 |
| 24647 | // Dst: (ATOMIC_RMW_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24648 | /* 49858*/ /*Scope*/ 21, /*->49880*/ |
| 24649 | /* 49859*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 24650 | /* 49861*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24651 | /* 49863*/ OPC_EmitMergeInputChains1_0, |
| 24652 | /* 49864*/ OPC_EmitInteger, MVT::i32, 0, |
| 24653 | /* 49867*/ OPC_EmitInteger, MVT::i32, 0, |
| 24654 | /* 49870*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24655 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 24656 | // Src: (atomic_load_or:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>> - Complexity = 4 |
| 24657 | // Dst: (ATOMIC_RMW8_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24658 | /* 49880*/ /*Scope*/ 21, /*->49902*/ |
| 24659 | /* 49881*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 24660 | /* 49883*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24661 | /* 49885*/ OPC_EmitMergeInputChains1_0, |
| 24662 | /* 49886*/ OPC_EmitInteger, MVT::i32, 0, |
| 24663 | /* 49889*/ OPC_EmitInteger, MVT::i32, 0, |
| 24664 | /* 49892*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24665 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 24666 | // Src: (atomic_load_or:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>> - Complexity = 4 |
| 24667 | // Dst: (ATOMIC_RMW16_U_OR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24668 | /* 49902*/ 0, /*End of Scope*/ |
| 24669 | /* 49903*/ /*SwitchType*/ 21, MVT::i64,// ->49926 |
| 24670 | /* 49905*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_or_64 |
| 24671 | /* 49907*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24672 | /* 49909*/ OPC_EmitMergeInputChains1_0, |
| 24673 | /* 49910*/ OPC_EmitInteger, MVT::i32, 0, |
| 24674 | /* 49913*/ OPC_EmitInteger, MVT::i32, 0, |
| 24675 | /* 49916*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24676 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 24677 | // Src: (atomic_load_or:{ *:[i64] } I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_or_64>> - Complexity = 4 |
| 24678 | // Dst: (ATOMIC_RMW_OR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 24679 | /* 49926*/ 0, // EndSwitchType |
| 24680 | /* 49927*/ /*Scope*/ 98, /*->50026*/ |
| 24681 | /* 49928*/ OPC_CheckChild1Type, MVT::i64, |
| 24682 | /* 49930*/ OPC_RecordChild2, // #2 = $val |
| 24683 | /* 49931*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->50002 |
| 24684 | /* 49934*/ OPC_Scope, 21, /*->49957*/ // 3 children in Scope |
| 24685 | /* 49936*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_or_32 |
| 24686 | /* 49938*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24687 | /* 49940*/ OPC_EmitMergeInputChains1_0, |
| 24688 | /* 49941*/ OPC_EmitInteger, MVT::i32, 0, |
| 24689 | /* 49944*/ OPC_EmitInteger, MVT::i64, 0, |
| 24690 | /* 49947*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24691 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 24692 | // Src: (atomic_load_or:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_32>> - Complexity = 4 |
| 24693 | // Dst: (ATOMIC_RMW_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24694 | /* 49957*/ /*Scope*/ 21, /*->49979*/ |
| 24695 | /* 49958*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_or_8 |
| 24696 | /* 49960*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24697 | /* 49962*/ OPC_EmitMergeInputChains1_0, |
| 24698 | /* 49963*/ OPC_EmitInteger, MVT::i32, 0, |
| 24699 | /* 49966*/ OPC_EmitInteger, MVT::i64, 0, |
| 24700 | /* 49969*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24701 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 24702 | // Src: (atomic_load_or:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_8>> - Complexity = 4 |
| 24703 | // Dst: (ATOMIC_RMW8_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24704 | /* 49979*/ /*Scope*/ 21, /*->50001*/ |
| 24705 | /* 49980*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_or_16 |
| 24706 | /* 49982*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24707 | /* 49984*/ OPC_EmitMergeInputChains1_0, |
| 24708 | /* 49985*/ OPC_EmitInteger, MVT::i32, 0, |
| 24709 | /* 49988*/ OPC_EmitInteger, MVT::i64, 0, |
| 24710 | /* 49991*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24711 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 24712 | // Src: (atomic_load_or:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_or_16>> - Complexity = 4 |
| 24713 | // Dst: (ATOMIC_RMW16_U_OR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24714 | /* 50001*/ 0, /*End of Scope*/ |
| 24715 | /* 50002*/ /*SwitchType*/ 21, MVT::i64,// ->50025 |
| 24716 | /* 50004*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_or_64 |
| 24717 | /* 50006*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24718 | /* 50008*/ OPC_EmitMergeInputChains1_0, |
| 24719 | /* 50009*/ OPC_EmitInteger, MVT::i32, 0, |
| 24720 | /* 50012*/ OPC_EmitInteger, MVT::i64, 0, |
| 24721 | /* 50015*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24722 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 24723 | // Src: (atomic_load_or:{ *:[i64] } I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_or_64>> - Complexity = 4 |
| 24724 | // Dst: (ATOMIC_RMW_OR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 24725 | /* 50025*/ 0, // EndSwitchType |
| 24726 | /* 50026*/ 0, /*End of Scope*/ |
| 24727 | /* 50027*/ 0, /*End of Scope*/ |
| 24728 | /* 50028*/ /*SwitchOpcode*/ 122|128,8/*1146*/, TARGET_VAL(ISD::ATOMIC_LOAD_XOR),// ->51178 |
| 24729 | /* 50032*/ OPC_RecordMemRef, |
| 24730 | /* 50033*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node |
| 24731 | /* 50034*/ OPC_Scope, 29|128,5/*669*/, /*->50706*/ // 2 children in Scope |
| 24732 | /* 50037*/ OPC_MoveChild1, |
| 24733 | /* 50038*/ OPC_SwitchOpcode /*3 cases */, 73|128,1/*201*/, TARGET_VAL(ISD::ADD),// ->50244 |
| 24734 | /* 50043*/ OPC_RecordChild0, // #1 = $addr |
| 24735 | /* 50044*/ OPC_RecordChild1, // #2 = $off |
| 24736 | /* 50045*/ OPC_MoveChild1, |
| 24737 | /* 50046*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 24738 | /* 50049*/ OPC_MoveParent, |
| 24739 | /* 50050*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 24740 | /* 50052*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->50148 |
| 24741 | /* 50055*/ OPC_MoveParent, |
| 24742 | /* 50056*/ OPC_RecordChild2, // #3 = $val |
| 24743 | /* 50057*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->50125 |
| 24744 | /* 50060*/ OPC_Scope, 20, /*->50082*/ // 3 children in Scope |
| 24745 | /* 50062*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 24746 | /* 50064*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24747 | /* 50066*/ OPC_EmitMergeInputChains1_0, |
| 24748 | /* 50067*/ OPC_EmitInteger, MVT::i32, 0, |
| 24749 | /* 50070*/ OPC_EmitConvertToTarget, 2, |
| 24750 | /* 50072*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24751 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24752 | // Src: (atomic_load_xor:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_32>> - Complexity = 11 |
| 24753 | // Dst: (ATOMIC_RMW_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24754 | /* 50082*/ /*Scope*/ 20, /*->50103*/ |
| 24755 | /* 50083*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 24756 | /* 50085*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24757 | /* 50087*/ OPC_EmitMergeInputChains1_0, |
| 24758 | /* 50088*/ OPC_EmitInteger, MVT::i32, 0, |
| 24759 | /* 50091*/ OPC_EmitConvertToTarget, 2, |
| 24760 | /* 50093*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24761 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24762 | // Src: (atomic_load_xor:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>> - Complexity = 11 |
| 24763 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24764 | /* 50103*/ /*Scope*/ 20, /*->50124*/ |
| 24765 | /* 50104*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 24766 | /* 50106*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24767 | /* 50108*/ OPC_EmitMergeInputChains1_0, |
| 24768 | /* 50109*/ OPC_EmitInteger, MVT::i32, 0, |
| 24769 | /* 50112*/ OPC_EmitConvertToTarget, 2, |
| 24770 | /* 50114*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24771 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24772 | // Src: (atomic_load_xor:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>> - Complexity = 11 |
| 24773 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24774 | /* 50124*/ 0, /*End of Scope*/ |
| 24775 | /* 50125*/ /*SwitchType*/ 20, MVT::i64,// ->50147 |
| 24776 | /* 50127*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_xor_64 |
| 24777 | /* 50129*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24778 | /* 50131*/ OPC_EmitMergeInputChains1_0, |
| 24779 | /* 50132*/ OPC_EmitInteger, MVT::i32, 0, |
| 24780 | /* 50135*/ OPC_EmitConvertToTarget, 2, |
| 24781 | /* 50137*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24782 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 24783 | // Src: (atomic_load_xor:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_xor_64>> - Complexity = 11 |
| 24784 | // Dst: (ATOMIC_RMW_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 24785 | /* 50147*/ 0, // EndSwitchType |
| 24786 | /* 50148*/ /*SwitchType*/ 93, MVT::i64,// ->50243 |
| 24787 | /* 50150*/ OPC_MoveParent, |
| 24788 | /* 50151*/ OPC_RecordChild2, // #3 = $val |
| 24789 | /* 50152*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->50220 |
| 24790 | /* 50155*/ OPC_Scope, 20, /*->50177*/ // 3 children in Scope |
| 24791 | /* 50157*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 24792 | /* 50159*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24793 | /* 50161*/ OPC_EmitMergeInputChains1_0, |
| 24794 | /* 50162*/ OPC_EmitInteger, MVT::i32, 0, |
| 24795 | /* 50165*/ OPC_EmitConvertToTarget, 2, |
| 24796 | /* 50167*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24797 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24798 | // Src: (atomic_load_xor:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_32>> - Complexity = 11 |
| 24799 | // Dst: (ATOMIC_RMW_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24800 | /* 50177*/ /*Scope*/ 20, /*->50198*/ |
| 24801 | /* 50178*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 24802 | /* 50180*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24803 | /* 50182*/ OPC_EmitMergeInputChains1_0, |
| 24804 | /* 50183*/ OPC_EmitInteger, MVT::i32, 0, |
| 24805 | /* 50186*/ OPC_EmitConvertToTarget, 2, |
| 24806 | /* 50188*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24807 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24808 | // Src: (atomic_load_xor:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>> - Complexity = 11 |
| 24809 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24810 | /* 50198*/ /*Scope*/ 20, /*->50219*/ |
| 24811 | /* 50199*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 24812 | /* 50201*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24813 | /* 50203*/ OPC_EmitMergeInputChains1_0, |
| 24814 | /* 50204*/ OPC_EmitInteger, MVT::i32, 0, |
| 24815 | /* 50207*/ OPC_EmitConvertToTarget, 2, |
| 24816 | /* 50209*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24817 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24818 | // Src: (atomic_load_xor:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>> - Complexity = 11 |
| 24819 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24820 | /* 50219*/ 0, /*End of Scope*/ |
| 24821 | /* 50220*/ /*SwitchType*/ 20, MVT::i64,// ->50242 |
| 24822 | /* 50222*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_xor_64 |
| 24823 | /* 50224*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24824 | /* 50226*/ OPC_EmitMergeInputChains1_0, |
| 24825 | /* 50227*/ OPC_EmitInteger, MVT::i32, 0, |
| 24826 | /* 50230*/ OPC_EmitConvertToTarget, 2, |
| 24827 | /* 50232*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24828 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 24829 | // Src: (atomic_load_xor:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_xor_64>> - Complexity = 11 |
| 24830 | // Dst: (ATOMIC_RMW_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 24831 | /* 50242*/ 0, // EndSwitchType |
| 24832 | /* 50243*/ 0, // EndSwitchType |
| 24833 | /* 50244*/ /*SwitchOpcode*/ 73|128,1/*201*/, TARGET_VAL(ISD::OR),// ->50449 |
| 24834 | /* 50248*/ OPC_RecordChild0, // #1 = $addr |
| 24835 | /* 50249*/ OPC_RecordChild1, // #2 = $off |
| 24836 | /* 50250*/ OPC_MoveChild1, |
| 24837 | /* 50251*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 24838 | /* 50254*/ OPC_MoveParent, |
| 24839 | /* 50255*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 24840 | /* 50257*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->50353 |
| 24841 | /* 50260*/ OPC_MoveParent, |
| 24842 | /* 50261*/ OPC_RecordChild2, // #3 = $val |
| 24843 | /* 50262*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->50330 |
| 24844 | /* 50265*/ OPC_Scope, 20, /*->50287*/ // 3 children in Scope |
| 24845 | /* 50267*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 24846 | /* 50269*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24847 | /* 50271*/ OPC_EmitMergeInputChains1_0, |
| 24848 | /* 50272*/ OPC_EmitInteger, MVT::i32, 0, |
| 24849 | /* 50275*/ OPC_EmitConvertToTarget, 2, |
| 24850 | /* 50277*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24851 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24852 | // Src: (atomic_load_xor:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_32>> - Complexity = 11 |
| 24853 | // Dst: (ATOMIC_RMW_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24854 | /* 50287*/ /*Scope*/ 20, /*->50308*/ |
| 24855 | /* 50288*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 24856 | /* 50290*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24857 | /* 50292*/ OPC_EmitMergeInputChains1_0, |
| 24858 | /* 50293*/ OPC_EmitInteger, MVT::i32, 0, |
| 24859 | /* 50296*/ OPC_EmitConvertToTarget, 2, |
| 24860 | /* 50298*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24861 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24862 | // Src: (atomic_load_xor:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>> - Complexity = 11 |
| 24863 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24864 | /* 50308*/ /*Scope*/ 20, /*->50329*/ |
| 24865 | /* 50309*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 24866 | /* 50311*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24867 | /* 50313*/ OPC_EmitMergeInputChains1_0, |
| 24868 | /* 50314*/ OPC_EmitInteger, MVT::i32, 0, |
| 24869 | /* 50317*/ OPC_EmitConvertToTarget, 2, |
| 24870 | /* 50319*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24871 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24872 | // Src: (atomic_load_xor:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>> - Complexity = 11 |
| 24873 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 24874 | /* 50329*/ 0, /*End of Scope*/ |
| 24875 | /* 50330*/ /*SwitchType*/ 20, MVT::i64,// ->50352 |
| 24876 | /* 50332*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_xor_64 |
| 24877 | /* 50334*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24878 | /* 50336*/ OPC_EmitMergeInputChains1_0, |
| 24879 | /* 50337*/ OPC_EmitInteger, MVT::i32, 0, |
| 24880 | /* 50340*/ OPC_EmitConvertToTarget, 2, |
| 24881 | /* 50342*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24882 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 24883 | // Src: (atomic_load_xor:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_xor_64>> - Complexity = 11 |
| 24884 | // Dst: (ATOMIC_RMW_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 24885 | /* 50352*/ 0, // EndSwitchType |
| 24886 | /* 50353*/ /*SwitchType*/ 93, MVT::i64,// ->50448 |
| 24887 | /* 50355*/ OPC_MoveParent, |
| 24888 | /* 50356*/ OPC_RecordChild2, // #3 = $val |
| 24889 | /* 50357*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->50425 |
| 24890 | /* 50360*/ OPC_Scope, 20, /*->50382*/ // 3 children in Scope |
| 24891 | /* 50362*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 24892 | /* 50364*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24893 | /* 50366*/ OPC_EmitMergeInputChains1_0, |
| 24894 | /* 50367*/ OPC_EmitInteger, MVT::i32, 0, |
| 24895 | /* 50370*/ OPC_EmitConvertToTarget, 2, |
| 24896 | /* 50372*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24897 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24898 | // Src: (atomic_load_xor:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_32>> - Complexity = 11 |
| 24899 | // Dst: (ATOMIC_RMW_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24900 | /* 50382*/ /*Scope*/ 20, /*->50403*/ |
| 24901 | /* 50383*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 24902 | /* 50385*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24903 | /* 50387*/ OPC_EmitMergeInputChains1_0, |
| 24904 | /* 50388*/ OPC_EmitInteger, MVT::i32, 0, |
| 24905 | /* 50391*/ OPC_EmitConvertToTarget, 2, |
| 24906 | /* 50393*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24907 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24908 | // Src: (atomic_load_xor:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>> - Complexity = 11 |
| 24909 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24910 | /* 50403*/ /*Scope*/ 20, /*->50424*/ |
| 24911 | /* 50404*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 24912 | /* 50406*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24913 | /* 50408*/ OPC_EmitMergeInputChains1_0, |
| 24914 | /* 50409*/ OPC_EmitInteger, MVT::i32, 0, |
| 24915 | /* 50412*/ OPC_EmitConvertToTarget, 2, |
| 24916 | /* 50414*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24917 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 24918 | // Src: (atomic_load_xor:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>> - Complexity = 11 |
| 24919 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 24920 | /* 50424*/ 0, /*End of Scope*/ |
| 24921 | /* 50425*/ /*SwitchType*/ 20, MVT::i64,// ->50447 |
| 24922 | /* 50427*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_xor_64 |
| 24923 | /* 50429*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 24924 | /* 50431*/ OPC_EmitMergeInputChains1_0, |
| 24925 | /* 50432*/ OPC_EmitInteger, MVT::i32, 0, |
| 24926 | /* 50435*/ OPC_EmitConvertToTarget, 2, |
| 24927 | /* 50437*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24928 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 24929 | // Src: (atomic_load_xor:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_xor_64>> - Complexity = 11 |
| 24930 | // Dst: (ATOMIC_RMW_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 24931 | /* 50447*/ 0, // EndSwitchType |
| 24932 | /* 50448*/ 0, // EndSwitchType |
| 24933 | /* 50449*/ /*SwitchOpcode*/ 124|128,1/*252*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->50705 |
| 24934 | /* 50453*/ OPC_RecordChild0, // #1 = $off |
| 24935 | /* 50454*/ OPC_MoveChild0, |
| 24936 | /* 50455*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 24937 | /* 50458*/ OPC_MoveParent, |
| 24938 | /* 50459*/ OPC_MoveParent, |
| 24939 | /* 50460*/ OPC_RecordChild2, // #2 = $val |
| 24940 | /* 50461*/ OPC_SwitchType /*2 cases */, 51|128,1/*179*/, MVT::i32,// ->50644 |
| 24941 | /* 50465*/ OPC_Scope, 58, /*->50525*/ // 3 children in Scope |
| 24942 | /* 50467*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 24943 | /* 50469*/ OPC_Scope, 26, /*->50497*/ // 2 children in Scope |
| 24944 | /* 50471*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24945 | /* 50473*/ OPC_EmitMergeInputChains1_0, |
| 24946 | /* 50474*/ OPC_EmitInteger, MVT::i32, 0, |
| 24947 | /* 50477*/ OPC_EmitInteger, MVT::i32, 0, |
| 24948 | /* 50480*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24949 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 24950 | /* 50487*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24951 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 24952 | // Src: (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_32>> - Complexity = 10 |
| 24953 | // Dst: (ATOMIC_RMW_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 24954 | /* 50497*/ /*Scope*/ 26, /*->50524*/ |
| 24955 | /* 50498*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24956 | /* 50500*/ OPC_EmitMergeInputChains1_0, |
| 24957 | /* 50501*/ OPC_EmitInteger, MVT::i32, 0, |
| 24958 | /* 50504*/ OPC_EmitInteger, MVT::i64, 0, |
| 24959 | /* 50507*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24960 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 24961 | /* 50514*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24962 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 24963 | // Src: (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_32>> - Complexity = 10 |
| 24964 | // Dst: (ATOMIC_RMW_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 24965 | /* 50524*/ 0, /*End of Scope*/ |
| 24966 | /* 50525*/ /*Scope*/ 58, /*->50584*/ |
| 24967 | /* 50526*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 24968 | /* 50528*/ OPC_Scope, 26, /*->50556*/ // 2 children in Scope |
| 24969 | /* 50530*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24970 | /* 50532*/ OPC_EmitMergeInputChains1_0, |
| 24971 | /* 50533*/ OPC_EmitInteger, MVT::i32, 0, |
| 24972 | /* 50536*/ OPC_EmitInteger, MVT::i32, 0, |
| 24973 | /* 50539*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24974 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 24975 | /* 50546*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 24976 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 24977 | // Src: (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>> - Complexity = 10 |
| 24978 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 24979 | /* 50556*/ /*Scope*/ 26, /*->50583*/ |
| 24980 | /* 50557*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24981 | /* 50559*/ OPC_EmitMergeInputChains1_0, |
| 24982 | /* 50560*/ OPC_EmitInteger, MVT::i32, 0, |
| 24983 | /* 50563*/ OPC_EmitInteger, MVT::i64, 0, |
| 24984 | /* 50566*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 24985 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 24986 | /* 50573*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 24987 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 24988 | // Src: (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>> - Complexity = 10 |
| 24989 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 24990 | /* 50583*/ 0, /*End of Scope*/ |
| 24991 | /* 50584*/ /*Scope*/ 58, /*->50643*/ |
| 24992 | /* 50585*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 24993 | /* 50587*/ OPC_Scope, 26, /*->50615*/ // 2 children in Scope |
| 24994 | /* 50589*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 24995 | /* 50591*/ OPC_EmitMergeInputChains1_0, |
| 24996 | /* 50592*/ OPC_EmitInteger, MVT::i32, 0, |
| 24997 | /* 50595*/ OPC_EmitInteger, MVT::i32, 0, |
| 24998 | /* 50598*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 24999 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 25000 | /* 50605*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25001 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 25002 | // Src: (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>> - Complexity = 10 |
| 25003 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 25004 | /* 50615*/ /*Scope*/ 26, /*->50642*/ |
| 25005 | /* 50616*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 25006 | /* 50618*/ OPC_EmitMergeInputChains1_0, |
| 25007 | /* 50619*/ OPC_EmitInteger, MVT::i32, 0, |
| 25008 | /* 50622*/ OPC_EmitInteger, MVT::i64, 0, |
| 25009 | /* 50625*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25010 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 25011 | /* 50632*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25012 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 25013 | // Src: (atomic_load_xor:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>> - Complexity = 10 |
| 25014 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 25015 | /* 50642*/ 0, /*End of Scope*/ |
| 25016 | /* 50643*/ 0, /*End of Scope*/ |
| 25017 | /* 50644*/ /*SwitchType*/ 58, MVT::i64,// ->50704 |
| 25018 | /* 50646*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_xor_64 |
| 25019 | /* 50648*/ OPC_Scope, 26, /*->50676*/ // 2 children in Scope |
| 25020 | /* 50650*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 25021 | /* 50652*/ OPC_EmitMergeInputChains1_0, |
| 25022 | /* 50653*/ OPC_EmitInteger, MVT::i32, 0, |
| 25023 | /* 50656*/ OPC_EmitInteger, MVT::i32, 0, |
| 25024 | /* 50659*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25025 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 25026 | /* 50666*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25027 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 25028 | // Src: (atomic_load_xor:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_xor_64>> - Complexity = 10 |
| 25029 | // Dst: (ATOMIC_RMW_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 25030 | /* 50676*/ /*Scope*/ 26, /*->50703*/ |
| 25031 | /* 50677*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 25032 | /* 50679*/ OPC_EmitMergeInputChains1_0, |
| 25033 | /* 50680*/ OPC_EmitInteger, MVT::i32, 0, |
| 25034 | /* 50683*/ OPC_EmitInteger, MVT::i64, 0, |
| 25035 | /* 50686*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25036 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 25037 | /* 50693*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25038 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 25039 | // Src: (atomic_load_xor:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_xor_64>> - Complexity = 10 |
| 25040 | // Dst: (ATOMIC_RMW_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 25041 | /* 50703*/ 0, /*End of Scope*/ |
| 25042 | /* 50704*/ 0, // EndSwitchType |
| 25043 | /* 50705*/ 0, // EndSwitchOpcode |
| 25044 | /* 50706*/ /*Scope*/ 85|128,3/*469*/, /*->51177*/ |
| 25045 | /* 50708*/ OPC_RecordChild1, // #1 = $off |
| 25046 | /* 50709*/ OPC_Scope, 10|128,2/*266*/, /*->50978*/ // 3 children in Scope |
| 25047 | /* 50712*/ OPC_MoveChild1, |
| 25048 | /* 50713*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 25049 | /* 50716*/ OPC_MoveParent, |
| 25050 | /* 50717*/ OPC_RecordChild2, // #2 = $val |
| 25051 | /* 50718*/ OPC_SwitchType /*2 cases */, 63|128,1/*191*/, MVT::i32,// ->50913 |
| 25052 | /* 50722*/ OPC_Scope, 62, /*->50786*/ // 3 children in Scope |
| 25053 | /* 50724*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 25054 | /* 50726*/ OPC_Scope, 28, /*->50756*/ // 2 children in Scope |
| 25055 | /* 50728*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25056 | /* 50730*/ OPC_EmitMergeInputChains1_0, |
| 25057 | /* 50731*/ OPC_EmitInteger, MVT::i32, 0, |
| 25058 | /* 50734*/ OPC_EmitConvertToTarget, 1, |
| 25059 | /* 50736*/ OPC_EmitInteger, MVT::i32, 0, |
| 25060 | /* 50739*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25061 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 25062 | /* 50746*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25063 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 25064 | // Src: (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_32>> - Complexity = 7 |
| 25065 | // Dst: (ATOMIC_RMW_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 25066 | /* 50756*/ /*Scope*/ 28, /*->50785*/ |
| 25067 | /* 50757*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25068 | /* 50759*/ OPC_EmitMergeInputChains1_0, |
| 25069 | /* 50760*/ OPC_EmitInteger, MVT::i32, 0, |
| 25070 | /* 50763*/ OPC_EmitConvertToTarget, 1, |
| 25071 | /* 50765*/ OPC_EmitInteger, MVT::i64, 0, |
| 25072 | /* 50768*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25073 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 25074 | /* 50775*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25075 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 25076 | // Src: (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_32>> - Complexity = 7 |
| 25077 | // Dst: (ATOMIC_RMW_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 25078 | /* 50785*/ 0, /*End of Scope*/ |
| 25079 | /* 50786*/ /*Scope*/ 62, /*->50849*/ |
| 25080 | /* 50787*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 25081 | /* 50789*/ OPC_Scope, 28, /*->50819*/ // 2 children in Scope |
| 25082 | /* 50791*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25083 | /* 50793*/ OPC_EmitMergeInputChains1_0, |
| 25084 | /* 50794*/ OPC_EmitInteger, MVT::i32, 0, |
| 25085 | /* 50797*/ OPC_EmitConvertToTarget, 1, |
| 25086 | /* 50799*/ OPC_EmitInteger, MVT::i32, 0, |
| 25087 | /* 50802*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25088 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 25089 | /* 50809*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25090 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 25091 | // Src: (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>> - Complexity = 7 |
| 25092 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 25093 | /* 50819*/ /*Scope*/ 28, /*->50848*/ |
| 25094 | /* 50820*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25095 | /* 50822*/ OPC_EmitMergeInputChains1_0, |
| 25096 | /* 50823*/ OPC_EmitInteger, MVT::i32, 0, |
| 25097 | /* 50826*/ OPC_EmitConvertToTarget, 1, |
| 25098 | /* 50828*/ OPC_EmitInteger, MVT::i64, 0, |
| 25099 | /* 50831*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25100 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 25101 | /* 50838*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25102 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 25103 | // Src: (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>> - Complexity = 7 |
| 25104 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 25105 | /* 50848*/ 0, /*End of Scope*/ |
| 25106 | /* 50849*/ /*Scope*/ 62, /*->50912*/ |
| 25107 | /* 50850*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 25108 | /* 50852*/ OPC_Scope, 28, /*->50882*/ // 2 children in Scope |
| 25109 | /* 50854*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25110 | /* 50856*/ OPC_EmitMergeInputChains1_0, |
| 25111 | /* 50857*/ OPC_EmitInteger, MVT::i32, 0, |
| 25112 | /* 50860*/ OPC_EmitConvertToTarget, 1, |
| 25113 | /* 50862*/ OPC_EmitInteger, MVT::i32, 0, |
| 25114 | /* 50865*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25115 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 25116 | /* 50872*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25117 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 25118 | // Src: (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>> - Complexity = 7 |
| 25119 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 25120 | /* 50882*/ /*Scope*/ 28, /*->50911*/ |
| 25121 | /* 50883*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25122 | /* 50885*/ OPC_EmitMergeInputChains1_0, |
| 25123 | /* 50886*/ OPC_EmitInteger, MVT::i32, 0, |
| 25124 | /* 50889*/ OPC_EmitConvertToTarget, 1, |
| 25125 | /* 50891*/ OPC_EmitInteger, MVT::i64, 0, |
| 25126 | /* 50894*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25127 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 25128 | /* 50901*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25129 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 25130 | // Src: (atomic_load_xor:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>> - Complexity = 7 |
| 25131 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 25132 | /* 50911*/ 0, /*End of Scope*/ |
| 25133 | /* 50912*/ 0, /*End of Scope*/ |
| 25134 | /* 50913*/ /*SwitchType*/ 62, MVT::i64,// ->50977 |
| 25135 | /* 50915*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_xor_64 |
| 25136 | /* 50917*/ OPC_Scope, 28, /*->50947*/ // 2 children in Scope |
| 25137 | /* 50919*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25138 | /* 50921*/ OPC_EmitMergeInputChains1_0, |
| 25139 | /* 50922*/ OPC_EmitInteger, MVT::i32, 0, |
| 25140 | /* 50925*/ OPC_EmitConvertToTarget, 1, |
| 25141 | /* 50927*/ OPC_EmitInteger, MVT::i32, 0, |
| 25142 | /* 50930*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25143 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 25144 | /* 50937*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25145 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 25146 | // Src: (atomic_load_xor:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_xor_64>> - Complexity = 7 |
| 25147 | // Dst: (ATOMIC_RMW_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 25148 | /* 50947*/ /*Scope*/ 28, /*->50976*/ |
| 25149 | /* 50948*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25150 | /* 50950*/ OPC_EmitMergeInputChains1_0, |
| 25151 | /* 50951*/ OPC_EmitInteger, MVT::i32, 0, |
| 25152 | /* 50954*/ OPC_EmitConvertToTarget, 1, |
| 25153 | /* 50956*/ OPC_EmitInteger, MVT::i64, 0, |
| 25154 | /* 50959*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25155 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 25156 | /* 50966*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25157 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 25158 | // Src: (atomic_load_xor:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_xor_64>> - Complexity = 7 |
| 25159 | // Dst: (ATOMIC_RMW_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 25160 | /* 50976*/ 0, /*End of Scope*/ |
| 25161 | /* 50977*/ 0, // EndSwitchType |
| 25162 | /* 50978*/ /*Scope*/ 98, /*->51077*/ |
| 25163 | /* 50979*/ OPC_CheckChild1Type, MVT::i32, |
| 25164 | /* 50981*/ OPC_RecordChild2, // #2 = $val |
| 25165 | /* 50982*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->51053 |
| 25166 | /* 50985*/ OPC_Scope, 21, /*->51008*/ // 3 children in Scope |
| 25167 | /* 50987*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 25168 | /* 50989*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25169 | /* 50991*/ OPC_EmitMergeInputChains1_0, |
| 25170 | /* 50992*/ OPC_EmitInteger, MVT::i32, 0, |
| 25171 | /* 50995*/ OPC_EmitInteger, MVT::i32, 0, |
| 25172 | /* 50998*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25173 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 25174 | // Src: (atomic_load_xor:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_32>> - Complexity = 4 |
| 25175 | // Dst: (ATOMIC_RMW_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 25176 | /* 51008*/ /*Scope*/ 21, /*->51030*/ |
| 25177 | /* 51009*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 25178 | /* 51011*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25179 | /* 51013*/ OPC_EmitMergeInputChains1_0, |
| 25180 | /* 51014*/ OPC_EmitInteger, MVT::i32, 0, |
| 25181 | /* 51017*/ OPC_EmitInteger, MVT::i32, 0, |
| 25182 | /* 51020*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25183 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 25184 | // Src: (atomic_load_xor:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>> - Complexity = 4 |
| 25185 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 25186 | /* 51030*/ /*Scope*/ 21, /*->51052*/ |
| 25187 | /* 51031*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 25188 | /* 51033*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25189 | /* 51035*/ OPC_EmitMergeInputChains1_0, |
| 25190 | /* 51036*/ OPC_EmitInteger, MVT::i32, 0, |
| 25191 | /* 51039*/ OPC_EmitInteger, MVT::i32, 0, |
| 25192 | /* 51042*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25193 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 25194 | // Src: (atomic_load_xor:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>> - Complexity = 4 |
| 25195 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 25196 | /* 51052*/ 0, /*End of Scope*/ |
| 25197 | /* 51053*/ /*SwitchType*/ 21, MVT::i64,// ->51076 |
| 25198 | /* 51055*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_xor_64 |
| 25199 | /* 51057*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25200 | /* 51059*/ OPC_EmitMergeInputChains1_0, |
| 25201 | /* 51060*/ OPC_EmitInteger, MVT::i32, 0, |
| 25202 | /* 51063*/ OPC_EmitInteger, MVT::i32, 0, |
| 25203 | /* 51066*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25204 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 25205 | // Src: (atomic_load_xor:{ *:[i64] } I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_xor_64>> - Complexity = 4 |
| 25206 | // Dst: (ATOMIC_RMW_XOR_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 25207 | /* 51076*/ 0, // EndSwitchType |
| 25208 | /* 51077*/ /*Scope*/ 98, /*->51176*/ |
| 25209 | /* 51078*/ OPC_CheckChild1Type, MVT::i64, |
| 25210 | /* 51080*/ OPC_RecordChild2, // #2 = $val |
| 25211 | /* 51081*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->51152 |
| 25212 | /* 51084*/ OPC_Scope, 21, /*->51107*/ // 3 children in Scope |
| 25213 | /* 51086*/ OPC_CheckPredicate, 6, // Predicate_atomic_load_xor_32 |
| 25214 | /* 51088*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25215 | /* 51090*/ OPC_EmitMergeInputChains1_0, |
| 25216 | /* 51091*/ OPC_EmitInteger, MVT::i32, 0, |
| 25217 | /* 51094*/ OPC_EmitInteger, MVT::i64, 0, |
| 25218 | /* 51097*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25219 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 25220 | // Src: (atomic_load_xor:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_32>> - Complexity = 4 |
| 25221 | // Dst: (ATOMIC_RMW_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 25222 | /* 51107*/ /*Scope*/ 21, /*->51129*/ |
| 25223 | /* 51108*/ OPC_CheckPredicate, 1, // Predicate_atomic_load_xor_8 |
| 25224 | /* 51110*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25225 | /* 51112*/ OPC_EmitMergeInputChains1_0, |
| 25226 | /* 51113*/ OPC_EmitInteger, MVT::i32, 0, |
| 25227 | /* 51116*/ OPC_EmitInteger, MVT::i64, 0, |
| 25228 | /* 51119*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25229 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 25230 | // Src: (atomic_load_xor:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_8>> - Complexity = 4 |
| 25231 | // Dst: (ATOMIC_RMW8_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 25232 | /* 51129*/ /*Scope*/ 21, /*->51151*/ |
| 25233 | /* 51130*/ OPC_CheckPredicate, 2, // Predicate_atomic_load_xor_16 |
| 25234 | /* 51132*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25235 | /* 51134*/ OPC_EmitMergeInputChains1_0, |
| 25236 | /* 51135*/ OPC_EmitInteger, MVT::i32, 0, |
| 25237 | /* 51138*/ OPC_EmitInteger, MVT::i64, 0, |
| 25238 | /* 51141*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25239 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 25240 | // Src: (atomic_load_xor:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_load_xor_16>> - Complexity = 4 |
| 25241 | // Dst: (ATOMIC_RMW16_U_XOR_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 25242 | /* 51151*/ 0, /*End of Scope*/ |
| 25243 | /* 51152*/ /*SwitchType*/ 21, MVT::i64,// ->51175 |
| 25244 | /* 51154*/ OPC_CheckPredicate, 9, // Predicate_atomic_load_xor_64 |
| 25245 | /* 51156*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25246 | /* 51158*/ OPC_EmitMergeInputChains1_0, |
| 25247 | /* 51159*/ OPC_EmitInteger, MVT::i32, 0, |
| 25248 | /* 51162*/ OPC_EmitInteger, MVT::i64, 0, |
| 25249 | /* 51165*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25250 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 25251 | // Src: (atomic_load_xor:{ *:[i64] } I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_load_xor_64>> - Complexity = 4 |
| 25252 | // Dst: (ATOMIC_RMW_XOR_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 25253 | /* 51175*/ 0, // EndSwitchType |
| 25254 | /* 51176*/ 0, /*End of Scope*/ |
| 25255 | /* 51177*/ 0, /*End of Scope*/ |
| 25256 | /* 51178*/ /*SwitchOpcode*/ 122|128,8/*1146*/, TARGET_VAL(ISD::ATOMIC_SWAP),// ->52328 |
| 25257 | /* 51182*/ OPC_RecordMemRef, |
| 25258 | /* 51183*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node |
| 25259 | /* 51184*/ OPC_Scope, 29|128,5/*669*/, /*->51856*/ // 2 children in Scope |
| 25260 | /* 51187*/ OPC_MoveChild1, |
| 25261 | /* 51188*/ OPC_SwitchOpcode /*3 cases */, 73|128,1/*201*/, TARGET_VAL(ISD::ADD),// ->51394 |
| 25262 | /* 51193*/ OPC_RecordChild0, // #1 = $addr |
| 25263 | /* 51194*/ OPC_RecordChild1, // #2 = $off |
| 25264 | /* 51195*/ OPC_MoveChild1, |
| 25265 | /* 51196*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 25266 | /* 51199*/ OPC_MoveParent, |
| 25267 | /* 51200*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 25268 | /* 51202*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->51298 |
| 25269 | /* 51205*/ OPC_MoveParent, |
| 25270 | /* 51206*/ OPC_RecordChild2, // #3 = $val |
| 25271 | /* 51207*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->51275 |
| 25272 | /* 51210*/ OPC_Scope, 20, /*->51232*/ // 3 children in Scope |
| 25273 | /* 51212*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 25274 | /* 51214*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25275 | /* 51216*/ OPC_EmitMergeInputChains1_0, |
| 25276 | /* 51217*/ OPC_EmitInteger, MVT::i32, 0, |
| 25277 | /* 51220*/ OPC_EmitConvertToTarget, 2, |
| 25278 | /* 51222*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25279 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 25280 | // Src: (atomic_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_32>> - Complexity = 11 |
| 25281 | // Dst: (ATOMIC_RMW_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 25282 | /* 51232*/ /*Scope*/ 20, /*->51253*/ |
| 25283 | /* 51233*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 25284 | /* 51235*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25285 | /* 51237*/ OPC_EmitMergeInputChains1_0, |
| 25286 | /* 51238*/ OPC_EmitInteger, MVT::i32, 0, |
| 25287 | /* 51241*/ OPC_EmitConvertToTarget, 2, |
| 25288 | /* 51243*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25289 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 25290 | // Src: (atomic_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>> - Complexity = 11 |
| 25291 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 25292 | /* 51253*/ /*Scope*/ 20, /*->51274*/ |
| 25293 | /* 51254*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 25294 | /* 51256*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25295 | /* 51258*/ OPC_EmitMergeInputChains1_0, |
| 25296 | /* 51259*/ OPC_EmitInteger, MVT::i32, 0, |
| 25297 | /* 51262*/ OPC_EmitConvertToTarget, 2, |
| 25298 | /* 51264*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25299 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 25300 | // Src: (atomic_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>> - Complexity = 11 |
| 25301 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 25302 | /* 51274*/ 0, /*End of Scope*/ |
| 25303 | /* 51275*/ /*SwitchType*/ 20, MVT::i64,// ->51297 |
| 25304 | /* 51277*/ OPC_CheckPredicate, 9, // Predicate_atomic_swap_64 |
| 25305 | /* 51279*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25306 | /* 51281*/ OPC_EmitMergeInputChains1_0, |
| 25307 | /* 51282*/ OPC_EmitInteger, MVT::i32, 0, |
| 25308 | /* 51285*/ OPC_EmitConvertToTarget, 2, |
| 25309 | /* 51287*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25310 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 25311 | // Src: (atomic_swap:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_swap_64>> - Complexity = 11 |
| 25312 | // Dst: (ATOMIC_RMW_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 25313 | /* 51297*/ 0, // EndSwitchType |
| 25314 | /* 51298*/ /*SwitchType*/ 93, MVT::i64,// ->51393 |
| 25315 | /* 51300*/ OPC_MoveParent, |
| 25316 | /* 51301*/ OPC_RecordChild2, // #3 = $val |
| 25317 | /* 51302*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->51370 |
| 25318 | /* 51305*/ OPC_Scope, 20, /*->51327*/ // 3 children in Scope |
| 25319 | /* 51307*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 25320 | /* 51309*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25321 | /* 51311*/ OPC_EmitMergeInputChains1_0, |
| 25322 | /* 51312*/ OPC_EmitInteger, MVT::i32, 0, |
| 25323 | /* 51315*/ OPC_EmitConvertToTarget, 2, |
| 25324 | /* 51317*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25325 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 25326 | // Src: (atomic_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_32>> - Complexity = 11 |
| 25327 | // Dst: (ATOMIC_RMW_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 25328 | /* 51327*/ /*Scope*/ 20, /*->51348*/ |
| 25329 | /* 51328*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 25330 | /* 51330*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25331 | /* 51332*/ OPC_EmitMergeInputChains1_0, |
| 25332 | /* 51333*/ OPC_EmitInteger, MVT::i32, 0, |
| 25333 | /* 51336*/ OPC_EmitConvertToTarget, 2, |
| 25334 | /* 51338*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25335 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 25336 | // Src: (atomic_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>> - Complexity = 11 |
| 25337 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 25338 | /* 51348*/ /*Scope*/ 20, /*->51369*/ |
| 25339 | /* 51349*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 25340 | /* 51351*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25341 | /* 51353*/ OPC_EmitMergeInputChains1_0, |
| 25342 | /* 51354*/ OPC_EmitInteger, MVT::i32, 0, |
| 25343 | /* 51357*/ OPC_EmitConvertToTarget, 2, |
| 25344 | /* 51359*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25345 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 25346 | // Src: (atomic_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>> - Complexity = 11 |
| 25347 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 25348 | /* 51369*/ 0, /*End of Scope*/ |
| 25349 | /* 51370*/ /*SwitchType*/ 20, MVT::i64,// ->51392 |
| 25350 | /* 51372*/ OPC_CheckPredicate, 9, // Predicate_atomic_swap_64 |
| 25351 | /* 51374*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25352 | /* 51376*/ OPC_EmitMergeInputChains1_0, |
| 25353 | /* 51377*/ OPC_EmitInteger, MVT::i32, 0, |
| 25354 | /* 51380*/ OPC_EmitConvertToTarget, 2, |
| 25355 | /* 51382*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25356 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 25357 | // Src: (atomic_swap:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_swap_64>> - Complexity = 11 |
| 25358 | // Dst: (ATOMIC_RMW_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 25359 | /* 51392*/ 0, // EndSwitchType |
| 25360 | /* 51393*/ 0, // EndSwitchType |
| 25361 | /* 51394*/ /*SwitchOpcode*/ 73|128,1/*201*/, TARGET_VAL(ISD::OR),// ->51599 |
| 25362 | /* 51398*/ OPC_RecordChild0, // #1 = $addr |
| 25363 | /* 51399*/ OPC_RecordChild1, // #2 = $off |
| 25364 | /* 51400*/ OPC_MoveChild1, |
| 25365 | /* 51401*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 25366 | /* 51404*/ OPC_MoveParent, |
| 25367 | /* 51405*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 25368 | /* 51407*/ OPC_SwitchType /*2 cases */, 93, MVT::i32,// ->51503 |
| 25369 | /* 51410*/ OPC_MoveParent, |
| 25370 | /* 51411*/ OPC_RecordChild2, // #3 = $val |
| 25371 | /* 51412*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->51480 |
| 25372 | /* 51415*/ OPC_Scope, 20, /*->51437*/ // 3 children in Scope |
| 25373 | /* 51417*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 25374 | /* 51419*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25375 | /* 51421*/ OPC_EmitMergeInputChains1_0, |
| 25376 | /* 51422*/ OPC_EmitInteger, MVT::i32, 0, |
| 25377 | /* 51425*/ OPC_EmitConvertToTarget, 2, |
| 25378 | /* 51427*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25379 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 25380 | // Src: (atomic_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_32>> - Complexity = 11 |
| 25381 | // Dst: (ATOMIC_RMW_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 25382 | /* 51437*/ /*Scope*/ 20, /*->51458*/ |
| 25383 | /* 51438*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 25384 | /* 51440*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25385 | /* 51442*/ OPC_EmitMergeInputChains1_0, |
| 25386 | /* 51443*/ OPC_EmitInteger, MVT::i32, 0, |
| 25387 | /* 51446*/ OPC_EmitConvertToTarget, 2, |
| 25388 | /* 51448*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25389 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 25390 | // Src: (atomic_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>> - Complexity = 11 |
| 25391 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 25392 | /* 51458*/ /*Scope*/ 20, /*->51479*/ |
| 25393 | /* 51459*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 25394 | /* 51461*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25395 | /* 51463*/ OPC_EmitMergeInputChains1_0, |
| 25396 | /* 51464*/ OPC_EmitInteger, MVT::i32, 0, |
| 25397 | /* 51467*/ OPC_EmitConvertToTarget, 2, |
| 25398 | /* 51469*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25399 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 25400 | // Src: (atomic_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>> - Complexity = 11 |
| 25401 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 25402 | /* 51479*/ 0, /*End of Scope*/ |
| 25403 | /* 51480*/ /*SwitchType*/ 20, MVT::i64,// ->51502 |
| 25404 | /* 51482*/ OPC_CheckPredicate, 9, // Predicate_atomic_swap_64 |
| 25405 | /* 51484*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25406 | /* 51486*/ OPC_EmitMergeInputChains1_0, |
| 25407 | /* 51487*/ OPC_EmitInteger, MVT::i32, 0, |
| 25408 | /* 51490*/ OPC_EmitConvertToTarget, 2, |
| 25409 | /* 51492*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25410 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 25411 | // Src: (atomic_swap:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_swap_64>> - Complexity = 11 |
| 25412 | // Dst: (ATOMIC_RMW_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 25413 | /* 51502*/ 0, // EndSwitchType |
| 25414 | /* 51503*/ /*SwitchType*/ 93, MVT::i64,// ->51598 |
| 25415 | /* 51505*/ OPC_MoveParent, |
| 25416 | /* 51506*/ OPC_RecordChild2, // #3 = $val |
| 25417 | /* 51507*/ OPC_SwitchType /*2 cases */, 65, MVT::i32,// ->51575 |
| 25418 | /* 51510*/ OPC_Scope, 20, /*->51532*/ // 3 children in Scope |
| 25419 | /* 51512*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 25420 | /* 51514*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25421 | /* 51516*/ OPC_EmitMergeInputChains1_0, |
| 25422 | /* 51517*/ OPC_EmitInteger, MVT::i32, 0, |
| 25423 | /* 51520*/ OPC_EmitConvertToTarget, 2, |
| 25424 | /* 51522*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25425 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 25426 | // Src: (atomic_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_32>> - Complexity = 11 |
| 25427 | // Dst: (ATOMIC_RMW_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 25428 | /* 51532*/ /*Scope*/ 20, /*->51553*/ |
| 25429 | /* 51533*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 25430 | /* 51535*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25431 | /* 51537*/ OPC_EmitMergeInputChains1_0, |
| 25432 | /* 51538*/ OPC_EmitInteger, MVT::i32, 0, |
| 25433 | /* 51541*/ OPC_EmitConvertToTarget, 2, |
| 25434 | /* 51543*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25435 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 25436 | // Src: (atomic_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>> - Complexity = 11 |
| 25437 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 25438 | /* 51553*/ /*Scope*/ 20, /*->51574*/ |
| 25439 | /* 51554*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 25440 | /* 51556*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25441 | /* 51558*/ OPC_EmitMergeInputChains1_0, |
| 25442 | /* 51559*/ OPC_EmitInteger, MVT::i32, 0, |
| 25443 | /* 51562*/ OPC_EmitConvertToTarget, 2, |
| 25444 | /* 51564*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25445 | MVT::i32, 4/*#Ops*/, 4, 5, 1, 3, |
| 25446 | // Src: (atomic_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>> - Complexity = 11 |
| 25447 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 25448 | /* 51574*/ 0, /*End of Scope*/ |
| 25449 | /* 51575*/ /*SwitchType*/ 20, MVT::i64,// ->51597 |
| 25450 | /* 51577*/ OPC_CheckPredicate, 9, // Predicate_atomic_swap_64 |
| 25451 | /* 51579*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25452 | /* 51581*/ OPC_EmitMergeInputChains1_0, |
| 25453 | /* 51582*/ OPC_EmitInteger, MVT::i32, 0, |
| 25454 | /* 51585*/ OPC_EmitConvertToTarget, 2, |
| 25455 | /* 51587*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25456 | MVT::i64, 4/*#Ops*/, 4, 5, 1, 3, |
| 25457 | // Src: (atomic_swap:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_swap_64>> - Complexity = 11 |
| 25458 | // Dst: (ATOMIC_RMW_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 25459 | /* 51597*/ 0, // EndSwitchType |
| 25460 | /* 51598*/ 0, // EndSwitchType |
| 25461 | /* 51599*/ /*SwitchOpcode*/ 124|128,1/*252*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->51855 |
| 25462 | /* 51603*/ OPC_RecordChild0, // #1 = $off |
| 25463 | /* 51604*/ OPC_MoveChild0, |
| 25464 | /* 51605*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 25465 | /* 51608*/ OPC_MoveParent, |
| 25466 | /* 51609*/ OPC_MoveParent, |
| 25467 | /* 51610*/ OPC_RecordChild2, // #2 = $val |
| 25468 | /* 51611*/ OPC_SwitchType /*2 cases */, 51|128,1/*179*/, MVT::i32,// ->51794 |
| 25469 | /* 51615*/ OPC_Scope, 58, /*->51675*/ // 3 children in Scope |
| 25470 | /* 51617*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 25471 | /* 51619*/ OPC_Scope, 26, /*->51647*/ // 2 children in Scope |
| 25472 | /* 51621*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 25473 | /* 51623*/ OPC_EmitMergeInputChains1_0, |
| 25474 | /* 51624*/ OPC_EmitInteger, MVT::i32, 0, |
| 25475 | /* 51627*/ OPC_EmitInteger, MVT::i32, 0, |
| 25476 | /* 51630*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25477 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 25478 | /* 51637*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25479 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 25480 | // Src: (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_32>> - Complexity = 10 |
| 25481 | // Dst: (ATOMIC_RMW_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 25482 | /* 51647*/ /*Scope*/ 26, /*->51674*/ |
| 25483 | /* 51648*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 25484 | /* 51650*/ OPC_EmitMergeInputChains1_0, |
| 25485 | /* 51651*/ OPC_EmitInteger, MVT::i32, 0, |
| 25486 | /* 51654*/ OPC_EmitInteger, MVT::i64, 0, |
| 25487 | /* 51657*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25488 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 25489 | /* 51664*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25490 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 25491 | // Src: (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_32>> - Complexity = 10 |
| 25492 | // Dst: (ATOMIC_RMW_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 25493 | /* 51674*/ 0, /*End of Scope*/ |
| 25494 | /* 51675*/ /*Scope*/ 58, /*->51734*/ |
| 25495 | /* 51676*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 25496 | /* 51678*/ OPC_Scope, 26, /*->51706*/ // 2 children in Scope |
| 25497 | /* 51680*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 25498 | /* 51682*/ OPC_EmitMergeInputChains1_0, |
| 25499 | /* 51683*/ OPC_EmitInteger, MVT::i32, 0, |
| 25500 | /* 51686*/ OPC_EmitInteger, MVT::i32, 0, |
| 25501 | /* 51689*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25502 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 25503 | /* 51696*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25504 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 25505 | // Src: (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>> - Complexity = 10 |
| 25506 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 25507 | /* 51706*/ /*Scope*/ 26, /*->51733*/ |
| 25508 | /* 51707*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 25509 | /* 51709*/ OPC_EmitMergeInputChains1_0, |
| 25510 | /* 51710*/ OPC_EmitInteger, MVT::i32, 0, |
| 25511 | /* 51713*/ OPC_EmitInteger, MVT::i64, 0, |
| 25512 | /* 51716*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25513 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 25514 | /* 51723*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25515 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 25516 | // Src: (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>> - Complexity = 10 |
| 25517 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 25518 | /* 51733*/ 0, /*End of Scope*/ |
| 25519 | /* 51734*/ /*Scope*/ 58, /*->51793*/ |
| 25520 | /* 51735*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 25521 | /* 51737*/ OPC_Scope, 26, /*->51765*/ // 2 children in Scope |
| 25522 | /* 51739*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 25523 | /* 51741*/ OPC_EmitMergeInputChains1_0, |
| 25524 | /* 51742*/ OPC_EmitInteger, MVT::i32, 0, |
| 25525 | /* 51745*/ OPC_EmitInteger, MVT::i32, 0, |
| 25526 | /* 51748*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25527 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 25528 | /* 51755*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25529 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 25530 | // Src: (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>> - Complexity = 10 |
| 25531 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 25532 | /* 51765*/ /*Scope*/ 26, /*->51792*/ |
| 25533 | /* 51766*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 25534 | /* 51768*/ OPC_EmitMergeInputChains1_0, |
| 25535 | /* 51769*/ OPC_EmitInteger, MVT::i32, 0, |
| 25536 | /* 51772*/ OPC_EmitInteger, MVT::i64, 0, |
| 25537 | /* 51775*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25538 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 25539 | /* 51782*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25540 | MVT::i32, 4/*#Ops*/, 3, 1, 5, 2, |
| 25541 | // Src: (atomic_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>> - Complexity = 10 |
| 25542 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 25543 | /* 51792*/ 0, /*End of Scope*/ |
| 25544 | /* 51793*/ 0, /*End of Scope*/ |
| 25545 | /* 51794*/ /*SwitchType*/ 58, MVT::i64,// ->51854 |
| 25546 | /* 51796*/ OPC_CheckPredicate, 9, // Predicate_atomic_swap_64 |
| 25547 | /* 51798*/ OPC_Scope, 26, /*->51826*/ // 2 children in Scope |
| 25548 | /* 51800*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 25549 | /* 51802*/ OPC_EmitMergeInputChains1_0, |
| 25550 | /* 51803*/ OPC_EmitInteger, MVT::i32, 0, |
| 25551 | /* 51806*/ OPC_EmitInteger, MVT::i32, 0, |
| 25552 | /* 51809*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25553 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 25554 | /* 51816*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25555 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 25556 | // Src: (atomic_swap:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_swap_64>> - Complexity = 10 |
| 25557 | // Dst: (ATOMIC_RMW_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 25558 | /* 51826*/ /*Scope*/ 26, /*->51853*/ |
| 25559 | /* 51827*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 25560 | /* 51829*/ OPC_EmitMergeInputChains1_0, |
| 25561 | /* 51830*/ OPC_EmitInteger, MVT::i32, 0, |
| 25562 | /* 51833*/ OPC_EmitInteger, MVT::i64, 0, |
| 25563 | /* 51836*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25564 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 25565 | /* 51843*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25566 | MVT::i64, 4/*#Ops*/, 3, 1, 5, 2, |
| 25567 | // Src: (atomic_swap:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$val)<<P:Predicate_atomic_swap_64>> - Complexity = 10 |
| 25568 | // Dst: (ATOMIC_RMW_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 25569 | /* 51853*/ 0, /*End of Scope*/ |
| 25570 | /* 51854*/ 0, // EndSwitchType |
| 25571 | /* 51855*/ 0, // EndSwitchOpcode |
| 25572 | /* 51856*/ /*Scope*/ 85|128,3/*469*/, /*->52327*/ |
| 25573 | /* 51858*/ OPC_RecordChild1, // #1 = $off |
| 25574 | /* 51859*/ OPC_Scope, 10|128,2/*266*/, /*->52128*/ // 3 children in Scope |
| 25575 | /* 51862*/ OPC_MoveChild1, |
| 25576 | /* 51863*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 25577 | /* 51866*/ OPC_MoveParent, |
| 25578 | /* 51867*/ OPC_RecordChild2, // #2 = $val |
| 25579 | /* 51868*/ OPC_SwitchType /*2 cases */, 63|128,1/*191*/, MVT::i32,// ->52063 |
| 25580 | /* 51872*/ OPC_Scope, 62, /*->51936*/ // 3 children in Scope |
| 25581 | /* 51874*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 25582 | /* 51876*/ OPC_Scope, 28, /*->51906*/ // 2 children in Scope |
| 25583 | /* 51878*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25584 | /* 51880*/ OPC_EmitMergeInputChains1_0, |
| 25585 | /* 51881*/ OPC_EmitInteger, MVT::i32, 0, |
| 25586 | /* 51884*/ OPC_EmitConvertToTarget, 1, |
| 25587 | /* 51886*/ OPC_EmitInteger, MVT::i32, 0, |
| 25588 | /* 51889*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25589 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 25590 | /* 51896*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25591 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 25592 | // Src: (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_32>> - Complexity = 7 |
| 25593 | // Dst: (ATOMIC_RMW_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 25594 | /* 51906*/ /*Scope*/ 28, /*->51935*/ |
| 25595 | /* 51907*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25596 | /* 51909*/ OPC_EmitMergeInputChains1_0, |
| 25597 | /* 51910*/ OPC_EmitInteger, MVT::i32, 0, |
| 25598 | /* 51913*/ OPC_EmitConvertToTarget, 1, |
| 25599 | /* 51915*/ OPC_EmitInteger, MVT::i64, 0, |
| 25600 | /* 51918*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25601 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 25602 | /* 51925*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25603 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 25604 | // Src: (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_32>> - Complexity = 7 |
| 25605 | // Dst: (ATOMIC_RMW_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 25606 | /* 51935*/ 0, /*End of Scope*/ |
| 25607 | /* 51936*/ /*Scope*/ 62, /*->51999*/ |
| 25608 | /* 51937*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 25609 | /* 51939*/ OPC_Scope, 28, /*->51969*/ // 2 children in Scope |
| 25610 | /* 51941*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25611 | /* 51943*/ OPC_EmitMergeInputChains1_0, |
| 25612 | /* 51944*/ OPC_EmitInteger, MVT::i32, 0, |
| 25613 | /* 51947*/ OPC_EmitConvertToTarget, 1, |
| 25614 | /* 51949*/ OPC_EmitInteger, MVT::i32, 0, |
| 25615 | /* 51952*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25616 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 25617 | /* 51959*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25618 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 25619 | // Src: (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>> - Complexity = 7 |
| 25620 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 25621 | /* 51969*/ /*Scope*/ 28, /*->51998*/ |
| 25622 | /* 51970*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25623 | /* 51972*/ OPC_EmitMergeInputChains1_0, |
| 25624 | /* 51973*/ OPC_EmitInteger, MVT::i32, 0, |
| 25625 | /* 51976*/ OPC_EmitConvertToTarget, 1, |
| 25626 | /* 51978*/ OPC_EmitInteger, MVT::i64, 0, |
| 25627 | /* 51981*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25628 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 25629 | /* 51988*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25630 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 25631 | // Src: (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>> - Complexity = 7 |
| 25632 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 25633 | /* 51998*/ 0, /*End of Scope*/ |
| 25634 | /* 51999*/ /*Scope*/ 62, /*->52062*/ |
| 25635 | /* 52000*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 25636 | /* 52002*/ OPC_Scope, 28, /*->52032*/ // 2 children in Scope |
| 25637 | /* 52004*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25638 | /* 52006*/ OPC_EmitMergeInputChains1_0, |
| 25639 | /* 52007*/ OPC_EmitInteger, MVT::i32, 0, |
| 25640 | /* 52010*/ OPC_EmitConvertToTarget, 1, |
| 25641 | /* 52012*/ OPC_EmitInteger, MVT::i32, 0, |
| 25642 | /* 52015*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25643 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 25644 | /* 52022*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25645 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 25646 | // Src: (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>> - Complexity = 7 |
| 25647 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$val) |
| 25648 | /* 52032*/ /*Scope*/ 28, /*->52061*/ |
| 25649 | /* 52033*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25650 | /* 52035*/ OPC_EmitMergeInputChains1_0, |
| 25651 | /* 52036*/ OPC_EmitInteger, MVT::i32, 0, |
| 25652 | /* 52039*/ OPC_EmitConvertToTarget, 1, |
| 25653 | /* 52041*/ OPC_EmitInteger, MVT::i64, 0, |
| 25654 | /* 52044*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25655 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 25656 | /* 52051*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25657 | MVT::i32, 4/*#Ops*/, 3, 4, 6, 2, |
| 25658 | // Src: (atomic_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>> - Complexity = 7 |
| 25659 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$val) |
| 25660 | /* 52061*/ 0, /*End of Scope*/ |
| 25661 | /* 52062*/ 0, /*End of Scope*/ |
| 25662 | /* 52063*/ /*SwitchType*/ 62, MVT::i64,// ->52127 |
| 25663 | /* 52065*/ OPC_CheckPredicate, 9, // Predicate_atomic_swap_64 |
| 25664 | /* 52067*/ OPC_Scope, 28, /*->52097*/ // 2 children in Scope |
| 25665 | /* 52069*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25666 | /* 52071*/ OPC_EmitMergeInputChains1_0, |
| 25667 | /* 52072*/ OPC_EmitInteger, MVT::i32, 0, |
| 25668 | /* 52075*/ OPC_EmitConvertToTarget, 1, |
| 25669 | /* 52077*/ OPC_EmitInteger, MVT::i32, 0, |
| 25670 | /* 52080*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 25671 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 25672 | /* 52087*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25673 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 25674 | // Src: (atomic_swap:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_swap_64>> - Complexity = 7 |
| 25675 | // Dst: (ATOMIC_RMW_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$val) |
| 25676 | /* 52097*/ /*Scope*/ 28, /*->52126*/ |
| 25677 | /* 52098*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25678 | /* 52100*/ OPC_EmitMergeInputChains1_0, |
| 25679 | /* 52101*/ OPC_EmitInteger, MVT::i32, 0, |
| 25680 | /* 52104*/ OPC_EmitConvertToTarget, 1, |
| 25681 | /* 52106*/ OPC_EmitInteger, MVT::i64, 0, |
| 25682 | /* 52109*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 25683 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 25684 | /* 52116*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25685 | MVT::i64, 4/*#Ops*/, 3, 4, 6, 2, |
| 25686 | // Src: (atomic_swap:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_swap_64>> - Complexity = 7 |
| 25687 | // Dst: (ATOMIC_RMW_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$val) |
| 25688 | /* 52126*/ 0, /*End of Scope*/ |
| 25689 | /* 52127*/ 0, // EndSwitchType |
| 25690 | /* 52128*/ /*Scope*/ 98, /*->52227*/ |
| 25691 | /* 52129*/ OPC_CheckChild1Type, MVT::i32, |
| 25692 | /* 52131*/ OPC_RecordChild2, // #2 = $val |
| 25693 | /* 52132*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->52203 |
| 25694 | /* 52135*/ OPC_Scope, 21, /*->52158*/ // 3 children in Scope |
| 25695 | /* 52137*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 25696 | /* 52139*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25697 | /* 52141*/ OPC_EmitMergeInputChains1_0, |
| 25698 | /* 52142*/ OPC_EmitInteger, MVT::i32, 0, |
| 25699 | /* 52145*/ OPC_EmitInteger, MVT::i32, 0, |
| 25700 | /* 52148*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25701 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 25702 | // Src: (atomic_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_32>> - Complexity = 4 |
| 25703 | // Dst: (ATOMIC_RMW_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 25704 | /* 52158*/ /*Scope*/ 21, /*->52180*/ |
| 25705 | /* 52159*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 25706 | /* 52161*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25707 | /* 52163*/ OPC_EmitMergeInputChains1_0, |
| 25708 | /* 52164*/ OPC_EmitInteger, MVT::i32, 0, |
| 25709 | /* 52167*/ OPC_EmitInteger, MVT::i32, 0, |
| 25710 | /* 52170*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25711 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 25712 | // Src: (atomic_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>> - Complexity = 4 |
| 25713 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 25714 | /* 52180*/ /*Scope*/ 21, /*->52202*/ |
| 25715 | /* 52181*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 25716 | /* 52183*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25717 | /* 52185*/ OPC_EmitMergeInputChains1_0, |
| 25718 | /* 52186*/ OPC_EmitInteger, MVT::i32, 0, |
| 25719 | /* 52189*/ OPC_EmitInteger, MVT::i32, 0, |
| 25720 | /* 52192*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25721 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 25722 | // Src: (atomic_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>> - Complexity = 4 |
| 25723 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$val) |
| 25724 | /* 52202*/ 0, /*End of Scope*/ |
| 25725 | /* 52203*/ /*SwitchType*/ 21, MVT::i64,// ->52226 |
| 25726 | /* 52205*/ OPC_CheckPredicate, 9, // Predicate_atomic_swap_64 |
| 25727 | /* 52207*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25728 | /* 52209*/ OPC_EmitMergeInputChains1_0, |
| 25729 | /* 52210*/ OPC_EmitInteger, MVT::i32, 0, |
| 25730 | /* 52213*/ OPC_EmitInteger, MVT::i32, 0, |
| 25731 | /* 52216*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25732 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 25733 | // Src: (atomic_swap:{ *:[i64] } I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_swap_64>> - Complexity = 4 |
| 25734 | // Dst: (ATOMIC_RMW_XCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$val) |
| 25735 | /* 52226*/ 0, // EndSwitchType |
| 25736 | /* 52227*/ /*Scope*/ 98, /*->52326*/ |
| 25737 | /* 52228*/ OPC_CheckChild1Type, MVT::i64, |
| 25738 | /* 52230*/ OPC_RecordChild2, // #2 = $val |
| 25739 | /* 52231*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->52302 |
| 25740 | /* 52234*/ OPC_Scope, 21, /*->52257*/ // 3 children in Scope |
| 25741 | /* 52236*/ OPC_CheckPredicate, 6, // Predicate_atomic_swap_32 |
| 25742 | /* 52238*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25743 | /* 52240*/ OPC_EmitMergeInputChains1_0, |
| 25744 | /* 52241*/ OPC_EmitInteger, MVT::i32, 0, |
| 25745 | /* 52244*/ OPC_EmitInteger, MVT::i64, 0, |
| 25746 | /* 52247*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25747 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 25748 | // Src: (atomic_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_32>> - Complexity = 4 |
| 25749 | // Dst: (ATOMIC_RMW_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 25750 | /* 52257*/ /*Scope*/ 21, /*->52279*/ |
| 25751 | /* 52258*/ OPC_CheckPredicate, 1, // Predicate_atomic_swap_8 |
| 25752 | /* 52260*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25753 | /* 52262*/ OPC_EmitMergeInputChains1_0, |
| 25754 | /* 52263*/ OPC_EmitInteger, MVT::i32, 0, |
| 25755 | /* 52266*/ OPC_EmitInteger, MVT::i64, 0, |
| 25756 | /* 52269*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25757 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 25758 | // Src: (atomic_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_8>> - Complexity = 4 |
| 25759 | // Dst: (ATOMIC_RMW8_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 25760 | /* 52279*/ /*Scope*/ 21, /*->52301*/ |
| 25761 | /* 52280*/ OPC_CheckPredicate, 2, // Predicate_atomic_swap_16 |
| 25762 | /* 52282*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25763 | /* 52284*/ OPC_EmitMergeInputChains1_0, |
| 25764 | /* 52285*/ OPC_EmitInteger, MVT::i32, 0, |
| 25765 | /* 52288*/ OPC_EmitInteger, MVT::i64, 0, |
| 25766 | /* 52291*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25767 | MVT::i32, 4/*#Ops*/, 3, 4, 1, 2, |
| 25768 | // Src: (atomic_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val)<<P:Predicate_atomic_swap_16>> - Complexity = 4 |
| 25769 | // Dst: (ATOMIC_RMW16_U_XCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$val) |
| 25770 | /* 52301*/ 0, /*End of Scope*/ |
| 25771 | /* 52302*/ /*SwitchType*/ 21, MVT::i64,// ->52325 |
| 25772 | /* 52304*/ OPC_CheckPredicate, 9, // Predicate_atomic_swap_64 |
| 25773 | /* 52306*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25774 | /* 52308*/ OPC_EmitMergeInputChains1_0, |
| 25775 | /* 52309*/ OPC_EmitInteger, MVT::i32, 0, |
| 25776 | /* 52312*/ OPC_EmitInteger, MVT::i64, 0, |
| 25777 | /* 52315*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25778 | MVT::i64, 4/*#Ops*/, 3, 4, 1, 2, |
| 25779 | // Src: (atomic_swap:{ *:[i64] } I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val)<<P:Predicate_atomic_swap_64>> - Complexity = 4 |
| 25780 | // Dst: (ATOMIC_RMW_XCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$val) |
| 25781 | /* 52325*/ 0, // EndSwitchType |
| 25782 | /* 52326*/ 0, /*End of Scope*/ |
| 25783 | /* 52327*/ 0, /*End of Scope*/ |
| 25784 | /* 52328*/ /*SwitchOpcode*/ 2|128,9/*1154*/, TARGET_VAL(ISD::ATOMIC_CMP_SWAP),// ->53486 |
| 25785 | /* 52332*/ OPC_RecordMemRef, |
| 25786 | /* 52333*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node |
| 25787 | /* 52334*/ OPC_Scope, 58|128,5/*698*/, /*->53035*/ // 2 children in Scope |
| 25788 | /* 52337*/ OPC_MoveChild1, |
| 25789 | /* 52338*/ OPC_SwitchOpcode /*3 cases */, 83|128,1/*211*/, TARGET_VAL(ISD::ADD),// ->52554 |
| 25790 | /* 52343*/ OPC_RecordChild0, // #1 = $addr |
| 25791 | /* 52344*/ OPC_RecordChild1, // #2 = $off |
| 25792 | /* 52345*/ OPC_MoveChild1, |
| 25793 | /* 52346*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 25794 | /* 52349*/ OPC_MoveParent, |
| 25795 | /* 52350*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 25796 | /* 52352*/ OPC_SwitchType /*2 cases */, 98, MVT::i32,// ->52453 |
| 25797 | /* 52355*/ OPC_MoveParent, |
| 25798 | /* 52356*/ OPC_RecordChild2, // #3 = $exp |
| 25799 | /* 52357*/ OPC_RecordChild3, // #4 = $new |
| 25800 | /* 52358*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->52429 |
| 25801 | /* 52361*/ OPC_Scope, 21, /*->52384*/ // 3 children in Scope |
| 25802 | /* 52363*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 25803 | /* 52365*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25804 | /* 52367*/ OPC_EmitMergeInputChains1_0, |
| 25805 | /* 52368*/ OPC_EmitInteger, MVT::i32, 0, |
| 25806 | /* 52371*/ OPC_EmitConvertToTarget, 2, |
| 25807 | /* 52373*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25808 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25809 | // Src: (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_32>> - Complexity = 11 |
| 25810 | // Dst: (ATOMIC_RMW_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 25811 | /* 52384*/ /*Scope*/ 21, /*->52406*/ |
| 25812 | /* 52385*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 25813 | /* 52387*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25814 | /* 52389*/ OPC_EmitMergeInputChains1_0, |
| 25815 | /* 52390*/ OPC_EmitInteger, MVT::i32, 0, |
| 25816 | /* 52393*/ OPC_EmitConvertToTarget, 2, |
| 25817 | /* 52395*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25818 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25819 | // Src: (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>> - Complexity = 11 |
| 25820 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 25821 | /* 52406*/ /*Scope*/ 21, /*->52428*/ |
| 25822 | /* 52407*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 25823 | /* 52409*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25824 | /* 52411*/ OPC_EmitMergeInputChains1_0, |
| 25825 | /* 52412*/ OPC_EmitInteger, MVT::i32, 0, |
| 25826 | /* 52415*/ OPC_EmitConvertToTarget, 2, |
| 25827 | /* 52417*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25828 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25829 | // Src: (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>> - Complexity = 11 |
| 25830 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 25831 | /* 52428*/ 0, /*End of Scope*/ |
| 25832 | /* 52429*/ /*SwitchType*/ 21, MVT::i64,// ->52452 |
| 25833 | /* 52431*/ OPC_CheckPredicate, 9, // Predicate_atomic_cmp_swap_64 |
| 25834 | /* 52433*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25835 | /* 52435*/ OPC_EmitMergeInputChains1_0, |
| 25836 | /* 52436*/ OPC_EmitInteger, MVT::i32, 0, |
| 25837 | /* 52439*/ OPC_EmitConvertToTarget, 2, |
| 25838 | /* 52441*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25839 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25840 | // Src: (atomic_cmp_swap:{ *:[i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new)<<P:Predicate_atomic_cmp_swap_64>> - Complexity = 11 |
| 25841 | // Dst: (ATOMIC_RMW_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 25842 | /* 52452*/ 0, // EndSwitchType |
| 25843 | /* 52453*/ /*SwitchType*/ 98, MVT::i64,// ->52553 |
| 25844 | /* 52455*/ OPC_MoveParent, |
| 25845 | /* 52456*/ OPC_RecordChild2, // #3 = $exp |
| 25846 | /* 52457*/ OPC_RecordChild3, // #4 = $new |
| 25847 | /* 52458*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->52529 |
| 25848 | /* 52461*/ OPC_Scope, 21, /*->52484*/ // 3 children in Scope |
| 25849 | /* 52463*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 25850 | /* 52465*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25851 | /* 52467*/ OPC_EmitMergeInputChains1_0, |
| 25852 | /* 52468*/ OPC_EmitInteger, MVT::i32, 0, |
| 25853 | /* 52471*/ OPC_EmitConvertToTarget, 2, |
| 25854 | /* 52473*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25855 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25856 | // Src: (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_32>> - Complexity = 11 |
| 25857 | // Dst: (ATOMIC_RMW_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 25858 | /* 52484*/ /*Scope*/ 21, /*->52506*/ |
| 25859 | /* 52485*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 25860 | /* 52487*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25861 | /* 52489*/ OPC_EmitMergeInputChains1_0, |
| 25862 | /* 52490*/ OPC_EmitInteger, MVT::i32, 0, |
| 25863 | /* 52493*/ OPC_EmitConvertToTarget, 2, |
| 25864 | /* 52495*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25865 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25866 | // Src: (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>> - Complexity = 11 |
| 25867 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 25868 | /* 52506*/ /*Scope*/ 21, /*->52528*/ |
| 25869 | /* 52507*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 25870 | /* 52509*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25871 | /* 52511*/ OPC_EmitMergeInputChains1_0, |
| 25872 | /* 52512*/ OPC_EmitInteger, MVT::i32, 0, |
| 25873 | /* 52515*/ OPC_EmitConvertToTarget, 2, |
| 25874 | /* 52517*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25875 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25876 | // Src: (atomic_cmp_swap:{ *:[i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>> - Complexity = 11 |
| 25877 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 25878 | /* 52528*/ 0, /*End of Scope*/ |
| 25879 | /* 52529*/ /*SwitchType*/ 21, MVT::i64,// ->52552 |
| 25880 | /* 52531*/ OPC_CheckPredicate, 9, // Predicate_atomic_cmp_swap_64 |
| 25881 | /* 52533*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25882 | /* 52535*/ OPC_EmitMergeInputChains1_0, |
| 25883 | /* 52536*/ OPC_EmitInteger, MVT::i32, 0, |
| 25884 | /* 52539*/ OPC_EmitConvertToTarget, 2, |
| 25885 | /* 52541*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25886 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25887 | // Src: (atomic_cmp_swap:{ *:[i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new)<<P:Predicate_atomic_cmp_swap_64>> - Complexity = 11 |
| 25888 | // Dst: (ATOMIC_RMW_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 25889 | /* 52552*/ 0, // EndSwitchType |
| 25890 | /* 52553*/ 0, // EndSwitchType |
| 25891 | /* 52554*/ /*SwitchOpcode*/ 83|128,1/*211*/, TARGET_VAL(ISD::OR),// ->52769 |
| 25892 | /* 52558*/ OPC_RecordChild0, // #1 = $addr |
| 25893 | /* 52559*/ OPC_RecordChild1, // #2 = $off |
| 25894 | /* 52560*/ OPC_MoveChild1, |
| 25895 | /* 52561*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 25896 | /* 52564*/ OPC_MoveParent, |
| 25897 | /* 52565*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 25898 | /* 52567*/ OPC_SwitchType /*2 cases */, 98, MVT::i32,// ->52668 |
| 25899 | /* 52570*/ OPC_MoveParent, |
| 25900 | /* 52571*/ OPC_RecordChild2, // #3 = $exp |
| 25901 | /* 52572*/ OPC_RecordChild3, // #4 = $new |
| 25902 | /* 52573*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->52644 |
| 25903 | /* 52576*/ OPC_Scope, 21, /*->52599*/ // 3 children in Scope |
| 25904 | /* 52578*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 25905 | /* 52580*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25906 | /* 52582*/ OPC_EmitMergeInputChains1_0, |
| 25907 | /* 52583*/ OPC_EmitInteger, MVT::i32, 0, |
| 25908 | /* 52586*/ OPC_EmitConvertToTarget, 2, |
| 25909 | /* 52588*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25910 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25911 | // Src: (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_32>> - Complexity = 11 |
| 25912 | // Dst: (ATOMIC_RMW_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 25913 | /* 52599*/ /*Scope*/ 21, /*->52621*/ |
| 25914 | /* 52600*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 25915 | /* 52602*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25916 | /* 52604*/ OPC_EmitMergeInputChains1_0, |
| 25917 | /* 52605*/ OPC_EmitInteger, MVT::i32, 0, |
| 25918 | /* 52608*/ OPC_EmitConvertToTarget, 2, |
| 25919 | /* 52610*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25920 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25921 | // Src: (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>> - Complexity = 11 |
| 25922 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 25923 | /* 52621*/ /*Scope*/ 21, /*->52643*/ |
| 25924 | /* 52622*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 25925 | /* 52624*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25926 | /* 52626*/ OPC_EmitMergeInputChains1_0, |
| 25927 | /* 52627*/ OPC_EmitInteger, MVT::i32, 0, |
| 25928 | /* 52630*/ OPC_EmitConvertToTarget, 2, |
| 25929 | /* 52632*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25930 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25931 | // Src: (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>> - Complexity = 11 |
| 25932 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 25933 | /* 52643*/ 0, /*End of Scope*/ |
| 25934 | /* 52644*/ /*SwitchType*/ 21, MVT::i64,// ->52667 |
| 25935 | /* 52646*/ OPC_CheckPredicate, 9, // Predicate_atomic_cmp_swap_64 |
| 25936 | /* 52648*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25937 | /* 52650*/ OPC_EmitMergeInputChains1_0, |
| 25938 | /* 52651*/ OPC_EmitInteger, MVT::i32, 0, |
| 25939 | /* 52654*/ OPC_EmitConvertToTarget, 2, |
| 25940 | /* 52656*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 25941 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25942 | // Src: (atomic_cmp_swap:{ *:[i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new)<<P:Predicate_atomic_cmp_swap_64>> - Complexity = 11 |
| 25943 | // Dst: (ATOMIC_RMW_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 25944 | /* 52667*/ 0, // EndSwitchType |
| 25945 | /* 52668*/ /*SwitchType*/ 98, MVT::i64,// ->52768 |
| 25946 | /* 52670*/ OPC_MoveParent, |
| 25947 | /* 52671*/ OPC_RecordChild2, // #3 = $exp |
| 25948 | /* 52672*/ OPC_RecordChild3, // #4 = $new |
| 25949 | /* 52673*/ OPC_SwitchType /*2 cases */, 68, MVT::i32,// ->52744 |
| 25950 | /* 52676*/ OPC_Scope, 21, /*->52699*/ // 3 children in Scope |
| 25951 | /* 52678*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 25952 | /* 52680*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25953 | /* 52682*/ OPC_EmitMergeInputChains1_0, |
| 25954 | /* 52683*/ OPC_EmitInteger, MVT::i32, 0, |
| 25955 | /* 52686*/ OPC_EmitConvertToTarget, 2, |
| 25956 | /* 52688*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25957 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25958 | // Src: (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_32>> - Complexity = 11 |
| 25959 | // Dst: (ATOMIC_RMW_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 25960 | /* 52699*/ /*Scope*/ 21, /*->52721*/ |
| 25961 | /* 52700*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 25962 | /* 52702*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25963 | /* 52704*/ OPC_EmitMergeInputChains1_0, |
| 25964 | /* 52705*/ OPC_EmitInteger, MVT::i32, 0, |
| 25965 | /* 52708*/ OPC_EmitConvertToTarget, 2, |
| 25966 | /* 52710*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25967 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25968 | // Src: (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>> - Complexity = 11 |
| 25969 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 25970 | /* 52721*/ /*Scope*/ 21, /*->52743*/ |
| 25971 | /* 52722*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 25972 | /* 52724*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25973 | /* 52726*/ OPC_EmitMergeInputChains1_0, |
| 25974 | /* 52727*/ OPC_EmitInteger, MVT::i32, 0, |
| 25975 | /* 52730*/ OPC_EmitConvertToTarget, 2, |
| 25976 | /* 52732*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25977 | MVT::i32, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25978 | // Src: (atomic_cmp_swap:{ *:[i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>> - Complexity = 11 |
| 25979 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 25980 | /* 52743*/ 0, /*End of Scope*/ |
| 25981 | /* 52744*/ /*SwitchType*/ 21, MVT::i64,// ->52767 |
| 25982 | /* 52746*/ OPC_CheckPredicate, 9, // Predicate_atomic_cmp_swap_64 |
| 25983 | /* 52748*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 25984 | /* 52750*/ OPC_EmitMergeInputChains1_0, |
| 25985 | /* 52751*/ OPC_EmitInteger, MVT::i32, 0, |
| 25986 | /* 52754*/ OPC_EmitConvertToTarget, 2, |
| 25987 | /* 52756*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 25988 | MVT::i64, 5/*#Ops*/, 5, 6, 1, 3, 4, |
| 25989 | // Src: (atomic_cmp_swap:{ *:[i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new)<<P:Predicate_atomic_cmp_swap_64>> - Complexity = 11 |
| 25990 | // Dst: (ATOMIC_RMW_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 25991 | /* 52767*/ 0, // EndSwitchType |
| 25992 | /* 52768*/ 0, // EndSwitchType |
| 25993 | /* 52769*/ /*SwitchOpcode*/ 5|128,2/*261*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->53034 |
| 25994 | /* 52773*/ OPC_RecordChild0, // #1 = $off |
| 25995 | /* 52774*/ OPC_MoveChild0, |
| 25996 | /* 52775*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 25997 | /* 52778*/ OPC_MoveParent, |
| 25998 | /* 52779*/ OPC_MoveParent, |
| 25999 | /* 52780*/ OPC_RecordChild2, // #2 = $exp |
| 26000 | /* 52781*/ OPC_RecordChild3, // #3 = $new |
| 26001 | /* 52782*/ OPC_SwitchType /*2 cases */, 57|128,1/*185*/, MVT::i32,// ->52971 |
| 26002 | /* 52786*/ OPC_Scope, 60, /*->52848*/ // 3 children in Scope |
| 26003 | /* 52788*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 26004 | /* 52790*/ OPC_Scope, 27, /*->52819*/ // 2 children in Scope |
| 26005 | /* 52792*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 26006 | /* 52794*/ OPC_EmitMergeInputChains1_0, |
| 26007 | /* 52795*/ OPC_EmitInteger, MVT::i32, 0, |
| 26008 | /* 52798*/ OPC_EmitInteger, MVT::i32, 0, |
| 26009 | /* 52801*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 26010 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 26011 | /* 52808*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 26012 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 26013 | // Src: (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_32>> - Complexity = 10 |
| 26014 | // Dst: (ATOMIC_RMW_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26015 | /* 52819*/ /*Scope*/ 27, /*->52847*/ |
| 26016 | /* 52820*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 26017 | /* 52822*/ OPC_EmitMergeInputChains1_0, |
| 26018 | /* 52823*/ OPC_EmitInteger, MVT::i32, 0, |
| 26019 | /* 52826*/ OPC_EmitInteger, MVT::i64, 0, |
| 26020 | /* 52829*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 26021 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 26022 | /* 52836*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 26023 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 26024 | // Src: (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_32>> - Complexity = 10 |
| 26025 | // Dst: (ATOMIC_RMW_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26026 | /* 52847*/ 0, /*End of Scope*/ |
| 26027 | /* 52848*/ /*Scope*/ 60, /*->52909*/ |
| 26028 | /* 52849*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 26029 | /* 52851*/ OPC_Scope, 27, /*->52880*/ // 2 children in Scope |
| 26030 | /* 52853*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 26031 | /* 52855*/ OPC_EmitMergeInputChains1_0, |
| 26032 | /* 52856*/ OPC_EmitInteger, MVT::i32, 0, |
| 26033 | /* 52859*/ OPC_EmitInteger, MVT::i32, 0, |
| 26034 | /* 52862*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 26035 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 26036 | /* 52869*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 26037 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 26038 | // Src: (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>> - Complexity = 10 |
| 26039 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26040 | /* 52880*/ /*Scope*/ 27, /*->52908*/ |
| 26041 | /* 52881*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 26042 | /* 52883*/ OPC_EmitMergeInputChains1_0, |
| 26043 | /* 52884*/ OPC_EmitInteger, MVT::i32, 0, |
| 26044 | /* 52887*/ OPC_EmitInteger, MVT::i64, 0, |
| 26045 | /* 52890*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 26046 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 26047 | /* 52897*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 26048 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 26049 | // Src: (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>> - Complexity = 10 |
| 26050 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26051 | /* 52908*/ 0, /*End of Scope*/ |
| 26052 | /* 52909*/ /*Scope*/ 60, /*->52970*/ |
| 26053 | /* 52910*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 26054 | /* 52912*/ OPC_Scope, 27, /*->52941*/ // 2 children in Scope |
| 26055 | /* 52914*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 26056 | /* 52916*/ OPC_EmitMergeInputChains1_0, |
| 26057 | /* 52917*/ OPC_EmitInteger, MVT::i32, 0, |
| 26058 | /* 52920*/ OPC_EmitInteger, MVT::i32, 0, |
| 26059 | /* 52923*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 26060 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 26061 | /* 52930*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 26062 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 26063 | // Src: (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>> - Complexity = 10 |
| 26064 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26065 | /* 52941*/ /*Scope*/ 27, /*->52969*/ |
| 26066 | /* 52942*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 26067 | /* 52944*/ OPC_EmitMergeInputChains1_0, |
| 26068 | /* 52945*/ OPC_EmitInteger, MVT::i32, 0, |
| 26069 | /* 52948*/ OPC_EmitInteger, MVT::i64, 0, |
| 26070 | /* 52951*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 26071 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 26072 | /* 52958*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 26073 | MVT::i32, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 26074 | // Src: (atomic_cmp_swap:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>> - Complexity = 10 |
| 26075 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26076 | /* 52969*/ 0, /*End of Scope*/ |
| 26077 | /* 52970*/ 0, /*End of Scope*/ |
| 26078 | /* 52971*/ /*SwitchType*/ 60, MVT::i64,// ->53033 |
| 26079 | /* 52973*/ OPC_CheckPredicate, 9, // Predicate_atomic_cmp_swap_64 |
| 26080 | /* 52975*/ OPC_Scope, 27, /*->53004*/ // 2 children in Scope |
| 26081 | /* 52977*/ OPC_CheckPatternPredicate, 2, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 26082 | /* 52979*/ OPC_EmitMergeInputChains1_0, |
| 26083 | /* 52980*/ OPC_EmitInteger, MVT::i32, 0, |
| 26084 | /* 52983*/ OPC_EmitInteger, MVT::i32, 0, |
| 26085 | /* 52986*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 26086 | MVT::i32, 1/*#Ops*/, 5, // Results = #6 |
| 26087 | /* 52993*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 26088 | MVT::i64, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 26089 | // Src: (atomic_cmp_swap:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new)<<P:Predicate_atomic_cmp_swap_64>> - Complexity = 10 |
| 26090 | // Dst: (ATOMIC_RMW_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 26091 | /* 53004*/ /*Scope*/ 27, /*->53032*/ |
| 26092 | /* 53005*/ OPC_CheckPatternPredicate, 3, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()) |
| 26093 | /* 53007*/ OPC_EmitMergeInputChains1_0, |
| 26094 | /* 53008*/ OPC_EmitInteger, MVT::i32, 0, |
| 26095 | /* 53011*/ OPC_EmitInteger, MVT::i64, 0, |
| 26096 | /* 53014*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 26097 | MVT::i64, 1/*#Ops*/, 5, // Results = #6 |
| 26098 | /* 53021*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 26099 | MVT::i64, 5/*#Ops*/, 4, 1, 6, 2, 3, |
| 26100 | // Src: (atomic_cmp_swap:{ *:[i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new)<<P:Predicate_atomic_cmp_swap_64>> - Complexity = 10 |
| 26101 | // Dst: (ATOMIC_RMW_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 26102 | /* 53032*/ 0, /*End of Scope*/ |
| 26103 | /* 53033*/ 0, // EndSwitchType |
| 26104 | /* 53034*/ 0, // EndSwitchOpcode |
| 26105 | /* 53035*/ /*Scope*/ 64|128,3/*448*/, /*->53485*/ |
| 26106 | /* 53037*/ OPC_RecordChild1, // #1 = $off |
| 26107 | /* 53038*/ OPC_Scope, 107|128,1/*235*/, /*->53276*/ // 3 children in Scope |
| 26108 | /* 53041*/ OPC_MoveChild1, |
| 26109 | /* 53042*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 26110 | /* 53045*/ OPC_MoveParent, |
| 26111 | /* 53046*/ OPC_RecordChild2, // #2 = $exp |
| 26112 | /* 53047*/ OPC_RecordChild3, // #3 = $new |
| 26113 | /* 53048*/ OPC_SwitchType /*2 cases */, 39|128,1/*167*/, MVT::i32,// ->53219 |
| 26114 | /* 53052*/ OPC_Scope, 54, /*->53108*/ // 3 children in Scope |
| 26115 | /* 53054*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 26116 | /* 53056*/ OPC_EmitMergeInputChains1_0, |
| 26117 | /* 53057*/ OPC_EmitInteger, MVT::i32, 0, |
| 26118 | /* 53060*/ OPC_EmitConvertToTarget, 1, |
| 26119 | /* 53062*/ OPC_Scope, 21, /*->53085*/ // 2 children in Scope |
| 26120 | /* 53064*/ OPC_EmitInteger, MVT::i32, 0, |
| 26121 | /* 53067*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 26122 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 26123 | /* 53074*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 26124 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 26125 | // Src: (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_32>> - Complexity = 7 |
| 26126 | // Dst: (ATOMIC_RMW_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26127 | /* 53085*/ /*Scope*/ 21, /*->53107*/ |
| 26128 | /* 53086*/ OPC_EmitInteger, MVT::i64, 0, |
| 26129 | /* 53089*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 26130 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 26131 | /* 53096*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 26132 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 26133 | // Src: (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_32>> - Complexity = 7 |
| 26134 | // Dst: (ATOMIC_RMW_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26135 | /* 53107*/ 0, /*End of Scope*/ |
| 26136 | /* 53108*/ /*Scope*/ 54, /*->53163*/ |
| 26137 | /* 53109*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 26138 | /* 53111*/ OPC_EmitMergeInputChains1_0, |
| 26139 | /* 53112*/ OPC_EmitInteger, MVT::i32, 0, |
| 26140 | /* 53115*/ OPC_EmitConvertToTarget, 1, |
| 26141 | /* 53117*/ OPC_Scope, 21, /*->53140*/ // 2 children in Scope |
| 26142 | /* 53119*/ OPC_EmitInteger, MVT::i32, 0, |
| 26143 | /* 53122*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 26144 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 26145 | /* 53129*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 26146 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 26147 | // Src: (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>> - Complexity = 7 |
| 26148 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26149 | /* 53140*/ /*Scope*/ 21, /*->53162*/ |
| 26150 | /* 53141*/ OPC_EmitInteger, MVT::i64, 0, |
| 26151 | /* 53144*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 26152 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 26153 | /* 53151*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 26154 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 26155 | // Src: (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>> - Complexity = 7 |
| 26156 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26157 | /* 53162*/ 0, /*End of Scope*/ |
| 26158 | /* 53163*/ /*Scope*/ 54, /*->53218*/ |
| 26159 | /* 53164*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 26160 | /* 53166*/ OPC_EmitMergeInputChains1_0, |
| 26161 | /* 53167*/ OPC_EmitInteger, MVT::i32, 0, |
| 26162 | /* 53170*/ OPC_EmitConvertToTarget, 1, |
| 26163 | /* 53172*/ OPC_Scope, 21, /*->53195*/ // 2 children in Scope |
| 26164 | /* 53174*/ OPC_EmitInteger, MVT::i32, 0, |
| 26165 | /* 53177*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 26166 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 26167 | /* 53184*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 26168 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 26169 | // Src: (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>> - Complexity = 7 |
| 26170 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26171 | /* 53195*/ /*Scope*/ 21, /*->53217*/ |
| 26172 | /* 53196*/ OPC_EmitInteger, MVT::i64, 0, |
| 26173 | /* 53199*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 26174 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 26175 | /* 53206*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 26176 | MVT::i32, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 26177 | // Src: (atomic_cmp_swap:{ *:[i32] } (imm:{ *:[iPTR] }):$off, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>> - Complexity = 7 |
| 26178 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26179 | /* 53217*/ 0, /*End of Scope*/ |
| 26180 | /* 53218*/ 0, /*End of Scope*/ |
| 26181 | /* 53219*/ /*SwitchType*/ 54, MVT::i64,// ->53275 |
| 26182 | /* 53221*/ OPC_CheckPredicate, 9, // Predicate_atomic_cmp_swap_64 |
| 26183 | /* 53223*/ OPC_EmitMergeInputChains1_0, |
| 26184 | /* 53224*/ OPC_EmitInteger, MVT::i32, 0, |
| 26185 | /* 53227*/ OPC_EmitConvertToTarget, 1, |
| 26186 | /* 53229*/ OPC_Scope, 21, /*->53252*/ // 2 children in Scope |
| 26187 | /* 53231*/ OPC_EmitInteger, MVT::i32, 0, |
| 26188 | /* 53234*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 26189 | MVT::i32, 1/*#Ops*/, 6, // Results = #7 |
| 26190 | /* 53241*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 26191 | MVT::i64, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 26192 | // Src: (atomic_cmp_swap:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new)<<P:Predicate_atomic_cmp_swap_64>> - Complexity = 7 |
| 26193 | // Dst: (ATOMIC_RMW_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 26194 | /* 53252*/ /*Scope*/ 21, /*->53274*/ |
| 26195 | /* 53253*/ OPC_EmitInteger, MVT::i64, 0, |
| 26196 | /* 53256*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 26197 | MVT::i64, 1/*#Ops*/, 6, // Results = #7 |
| 26198 | /* 53263*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 26199 | MVT::i64, 5/*#Ops*/, 4, 5, 7, 2, 3, |
| 26200 | // Src: (atomic_cmp_swap:{ *:[i64] } (imm:{ *:[iPTR] }):$off, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new)<<P:Predicate_atomic_cmp_swap_64>> - Complexity = 7 |
| 26201 | // Dst: (ATOMIC_RMW_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] }), i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 26202 | /* 53274*/ 0, /*End of Scope*/ |
| 26203 | /* 53275*/ 0, // EndSwitchType |
| 26204 | /* 53276*/ /*Scope*/ 103, /*->53380*/ |
| 26205 | /* 53277*/ OPC_CheckChild1Type, MVT::i32, |
| 26206 | /* 53279*/ OPC_RecordChild2, // #2 = $exp |
| 26207 | /* 53280*/ OPC_RecordChild3, // #3 = $new |
| 26208 | /* 53281*/ OPC_SwitchType /*2 cases */, 71, MVT::i32,// ->53355 |
| 26209 | /* 53284*/ OPC_Scope, 22, /*->53308*/ // 3 children in Scope |
| 26210 | /* 53286*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 26211 | /* 53288*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 26212 | /* 53290*/ OPC_EmitMergeInputChains1_0, |
| 26213 | /* 53291*/ OPC_EmitInteger, MVT::i32, 0, |
| 26214 | /* 53294*/ OPC_EmitInteger, MVT::i32, 0, |
| 26215 | /* 53297*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 26216 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 26217 | // Src: (atomic_cmp_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_32>> - Complexity = 4 |
| 26218 | // Dst: (ATOMIC_RMW_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26219 | /* 53308*/ /*Scope*/ 22, /*->53331*/ |
| 26220 | /* 53309*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 26221 | /* 53311*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 26222 | /* 53313*/ OPC_EmitMergeInputChains1_0, |
| 26223 | /* 53314*/ OPC_EmitInteger, MVT::i32, 0, |
| 26224 | /* 53317*/ OPC_EmitInteger, MVT::i32, 0, |
| 26225 | /* 53320*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 26226 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 26227 | // Src: (atomic_cmp_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>> - Complexity = 4 |
| 26228 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26229 | /* 53331*/ /*Scope*/ 22, /*->53354*/ |
| 26230 | /* 53332*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 26231 | /* 53334*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 26232 | /* 53336*/ OPC_EmitMergeInputChains1_0, |
| 26233 | /* 53337*/ OPC_EmitInteger, MVT::i32, 0, |
| 26234 | /* 53340*/ OPC_EmitInteger, MVT::i32, 0, |
| 26235 | /* 53343*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 26236 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 26237 | // Src: (atomic_cmp_swap:{ *:[i32] } I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>> - Complexity = 4 |
| 26238 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A32:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26239 | /* 53354*/ 0, /*End of Scope*/ |
| 26240 | /* 53355*/ /*SwitchType*/ 22, MVT::i64,// ->53379 |
| 26241 | /* 53357*/ OPC_CheckPredicate, 9, // Predicate_atomic_cmp_swap_64 |
| 26242 | /* 53359*/ OPC_CheckPatternPredicate, 0, // (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 26243 | /* 53361*/ OPC_EmitMergeInputChains1_0, |
| 26244 | /* 53362*/ OPC_EmitInteger, MVT::i32, 0, |
| 26245 | /* 53365*/ OPC_EmitInteger, MVT::i32, 0, |
| 26246 | /* 53368*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 26247 | MVT::i64, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 26248 | // Src: (atomic_cmp_swap:{ *:[i64] } I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new)<<P:Predicate_atomic_cmp_swap_64>> - Complexity = 4 |
| 26249 | // Dst: (ATOMIC_RMW_CMPXCHG_I64_A32:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 26250 | /* 53379*/ 0, // EndSwitchType |
| 26251 | /* 53380*/ /*Scope*/ 103, /*->53484*/ |
| 26252 | /* 53381*/ OPC_CheckChild1Type, MVT::i64, |
| 26253 | /* 53383*/ OPC_RecordChild2, // #2 = $exp |
| 26254 | /* 53384*/ OPC_RecordChild3, // #3 = $new |
| 26255 | /* 53385*/ OPC_SwitchType /*2 cases */, 71, MVT::i32,// ->53459 |
| 26256 | /* 53388*/ OPC_Scope, 22, /*->53412*/ // 3 children in Scope |
| 26257 | /* 53390*/ OPC_CheckPredicate, 6, // Predicate_atomic_cmp_swap_32 |
| 26258 | /* 53392*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 26259 | /* 53394*/ OPC_EmitMergeInputChains1_0, |
| 26260 | /* 53395*/ OPC_EmitInteger, MVT::i32, 0, |
| 26261 | /* 53398*/ OPC_EmitInteger, MVT::i64, 0, |
| 26262 | /* 53401*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 26263 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 26264 | // Src: (atomic_cmp_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_32>> - Complexity = 4 |
| 26265 | // Dst: (ATOMIC_RMW_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26266 | /* 53412*/ /*Scope*/ 22, /*->53435*/ |
| 26267 | /* 53413*/ OPC_CheckPredicate, 1, // Predicate_atomic_cmp_swap_8 |
| 26268 | /* 53415*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 26269 | /* 53417*/ OPC_EmitMergeInputChains1_0, |
| 26270 | /* 53418*/ OPC_EmitInteger, MVT::i32, 0, |
| 26271 | /* 53421*/ OPC_EmitInteger, MVT::i64, 0, |
| 26272 | /* 53424*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 26273 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 26274 | // Src: (atomic_cmp_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_8>> - Complexity = 4 |
| 26275 | // Dst: (ATOMIC_RMW8_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26276 | /* 53435*/ /*Scope*/ 22, /*->53458*/ |
| 26277 | /* 53436*/ OPC_CheckPredicate, 2, // Predicate_atomic_cmp_swap_16 |
| 26278 | /* 53438*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 26279 | /* 53440*/ OPC_EmitMergeInputChains1_0, |
| 26280 | /* 53441*/ OPC_EmitInteger, MVT::i32, 0, |
| 26281 | /* 53444*/ OPC_EmitInteger, MVT::i64, 0, |
| 26282 | /* 53447*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 26283 | MVT::i32, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 26284 | // Src: (atomic_cmp_swap:{ *:[i32] } I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new)<<P:Predicate_atomic_cmp_swap_16>> - Complexity = 4 |
| 26285 | // Dst: (ATOMIC_RMW16_U_CMPXCHG_I32_A64:{ *:[i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i32:{ *:[i32] }:$exp, i32:{ *:[i32] }:$new) |
| 26286 | /* 53458*/ 0, /*End of Scope*/ |
| 26287 | /* 53459*/ /*SwitchType*/ 22, MVT::i64,// ->53483 |
| 26288 | /* 53461*/ OPC_CheckPredicate, 9, // Predicate_atomic_cmp_swap_64 |
| 26289 | /* 53463*/ OPC_CheckPatternPredicate, 1, // (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) |
| 26290 | /* 53465*/ OPC_EmitMergeInputChains1_0, |
| 26291 | /* 53466*/ OPC_EmitInteger, MVT::i32, 0, |
| 26292 | /* 53469*/ OPC_EmitInteger, MVT::i64, 0, |
| 26293 | /* 53472*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 26294 | MVT::i64, 5/*#Ops*/, 4, 5, 1, 2, 3, |
| 26295 | // Src: (atomic_cmp_swap:{ *:[i64] } I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new)<<P:Predicate_atomic_cmp_swap_64>> - Complexity = 4 |
| 26296 | // Dst: (ATOMIC_RMW_CMPXCHG_I64_A64:{ *:[i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr, i64:{ *:[i64] }:$exp, i64:{ *:[i64] }:$new) |
| 26297 | /* 53483*/ 0, // EndSwitchType |
| 26298 | /* 53484*/ 0, /*End of Scope*/ |
| 26299 | /* 53485*/ 0, /*End of Scope*/ |
| 26300 | /* 53486*/ /*SwitchOpcode*/ 16|128,1/*144*/, TARGET_VAL(ISD::SIGN_EXTEND_INREG),// ->53634 |
| 26301 | /* 53490*/ OPC_Scope, 67, /*->53559*/ // 2 children in Scope |
| 26302 | /* 53492*/ OPC_MoveChild0, |
| 26303 | /* 53493*/ OPC_CheckOpcode, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT), |
| 26304 | /* 53496*/ OPC_RecordChild0, // #0 = $vec |
| 26305 | /* 53497*/ OPC_Scope, 29, /*->53528*/ // 2 children in Scope |
| 26306 | /* 53499*/ OPC_CheckChild0Type, MVT::v16i8, |
| 26307 | /* 53501*/ OPC_RecordChild1, // #1 = $idx |
| 26308 | /* 53502*/ OPC_MoveChild1, |
| 26309 | /* 53503*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 26310 | /* 53506*/ OPC_CheckPredicate, 4, // Predicate_LaneIdx16 |
| 26311 | /* 53508*/ OPC_CheckType, MVT::i32, |
| 26312 | /* 53510*/ OPC_MoveParent, |
| 26313 | /* 53511*/ OPC_MoveParent, |
| 26314 | /* 53512*/ OPC_MoveChild1, |
| 26315 | /* 53513*/ OPC_CheckValueType, MVT::i8, |
| 26316 | /* 53515*/ OPC_MoveParent, |
| 26317 | /* 53516*/ OPC_CheckType, MVT::i32, |
| 26318 | /* 53518*/ OPC_EmitConvertToTarget, 1, |
| 26319 | /* 53520*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I8x16_s), 0, |
| 26320 | MVT::i32, 2/*#Ops*/, 0, 2, |
| 26321 | // Src: (sext_inreg:{ *:[i32] } (vector_extract:{ *:[i32] } V128:{ *:[v16i8] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx16>>:$idx), i8:{ *:[Other] }) - Complexity = 10 |
| 26322 | // Dst: (EXTRACT_LANE_I8x16_s:{ *:[i32] } ?:{ *:[v16i8] }:$vec, (imm:{ *:[i32] }):$idx) |
| 26323 | /* 53528*/ /*Scope*/ 29, /*->53558*/ |
| 26324 | /* 53529*/ OPC_CheckChild0Type, MVT::v8i16, |
| 26325 | /* 53531*/ OPC_RecordChild1, // #1 = $idx |
| 26326 | /* 53532*/ OPC_MoveChild1, |
| 26327 | /* 53533*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 26328 | /* 53536*/ OPC_CheckPredicate, 5, // Predicate_LaneIdx8 |
| 26329 | /* 53538*/ OPC_CheckType, MVT::i32, |
| 26330 | /* 53540*/ OPC_MoveParent, |
| 26331 | /* 53541*/ OPC_MoveParent, |
| 26332 | /* 53542*/ OPC_MoveChild1, |
| 26333 | /* 53543*/ OPC_CheckValueType, MVT::i16, |
| 26334 | /* 53545*/ OPC_MoveParent, |
| 26335 | /* 53546*/ OPC_CheckType, MVT::i32, |
| 26336 | /* 53548*/ OPC_EmitConvertToTarget, 1, |
| 26337 | /* 53550*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I16x8_s), 0, |
| 26338 | MVT::i32, 2/*#Ops*/, 0, 2, |
| 26339 | // Src: (sext_inreg:{ *:[i32] } (vector_extract:{ *:[i32] } V128:{ *:[v8i16] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx8>>:$idx), i16:{ *:[Other] }) - Complexity = 10 |
| 26340 | // Dst: (EXTRACT_LANE_I16x8_s:{ *:[i32] } ?:{ *:[v8i16] }:$vec, (imm:{ *:[i32] }):$idx) |
| 26341 | /* 53558*/ 0, /*End of Scope*/ |
| 26342 | /* 53559*/ /*Scope*/ 73, /*->53633*/ |
| 26343 | /* 53560*/ OPC_RecordChild0, // #0 = $src |
| 26344 | /* 53561*/ OPC_MoveChild1, |
| 26345 | /* 53562*/ OPC_Scope, 27, /*->53591*/ // 3 children in Scope |
| 26346 | /* 53564*/ OPC_CheckValueType, MVT::i8, |
| 26347 | /* 53566*/ OPC_MoveParent, |
| 26348 | /* 53567*/ OPC_SwitchType /*2 cases */, 9, MVT::i32,// ->53579 |
| 26349 | /* 53570*/ OPC_CheckPatternPredicate, 11, // (Subtarget->hasSignExt()) |
| 26350 | /* 53572*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_EXTEND8_S_I32), 0, |
| 26351 | MVT::i32, 1/*#Ops*/, 0, |
| 26352 | // Src: (sext_inreg:{ *:[i32] } I32:{ *:[i32] }:$src, i8:{ *:[Other] }) - Complexity = 3 |
| 26353 | // Dst: (I32_EXTEND8_S_I32:{ *:[i32] } I32:{ *:[i32] }:$src) |
| 26354 | /* 53579*/ /*SwitchType*/ 9, MVT::i64,// ->53590 |
| 26355 | /* 53581*/ OPC_CheckPatternPredicate, 11, // (Subtarget->hasSignExt()) |
| 26356 | /* 53583*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_EXTEND8_S_I64), 0, |
| 26357 | MVT::i64, 1/*#Ops*/, 0, |
| 26358 | // Src: (sext_inreg:{ *:[i64] } I64:{ *:[i64] }:$src, i8:{ *:[Other] }) - Complexity = 3 |
| 26359 | // Dst: (I64_EXTEND8_S_I64:{ *:[i64] } I64:{ *:[i64] }:$src) |
| 26360 | /* 53590*/ 0, // EndSwitchType |
| 26361 | /* 53591*/ /*Scope*/ 27, /*->53619*/ |
| 26362 | /* 53592*/ OPC_CheckValueType, MVT::i16, |
| 26363 | /* 53594*/ OPC_MoveParent, |
| 26364 | /* 53595*/ OPC_SwitchType /*2 cases */, 9, MVT::i32,// ->53607 |
| 26365 | /* 53598*/ OPC_CheckPatternPredicate, 11, // (Subtarget->hasSignExt()) |
| 26366 | /* 53600*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_EXTEND16_S_I32), 0, |
| 26367 | MVT::i32, 1/*#Ops*/, 0, |
| 26368 | // Src: (sext_inreg:{ *:[i32] } I32:{ *:[i32] }:$src, i16:{ *:[Other] }) - Complexity = 3 |
| 26369 | // Dst: (I32_EXTEND16_S_I32:{ *:[i32] } I32:{ *:[i32] }:$src) |
| 26370 | /* 53607*/ /*SwitchType*/ 9, MVT::i64,// ->53618 |
| 26371 | /* 53609*/ OPC_CheckPatternPredicate, 11, // (Subtarget->hasSignExt()) |
| 26372 | /* 53611*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_EXTEND16_S_I64), 0, |
| 26373 | MVT::i64, 1/*#Ops*/, 0, |
| 26374 | // Src: (sext_inreg:{ *:[i64] } I64:{ *:[i64] }:$src, i16:{ *:[Other] }) - Complexity = 3 |
| 26375 | // Dst: (I64_EXTEND16_S_I64:{ *:[i64] } I64:{ *:[i64] }:$src) |
| 26376 | /* 53618*/ 0, // EndSwitchType |
| 26377 | /* 53619*/ /*Scope*/ 12, /*->53632*/ |
| 26378 | /* 53620*/ OPC_CheckValueType, MVT::i32, |
| 26379 | /* 53622*/ OPC_MoveParent, |
| 26380 | /* 53623*/ OPC_CheckPatternPredicate, 11, // (Subtarget->hasSignExt()) |
| 26381 | /* 53625*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_EXTEND32_S_I64), 0, |
| 26382 | MVT::i64, 1/*#Ops*/, 0, |
| 26383 | // Src: (sext_inreg:{ *:[i64] } I64:{ *:[i64] }:$src, i32:{ *:[Other] }) - Complexity = 3 |
| 26384 | // Dst: (I64_EXTEND32_S_I64:{ *:[i64] } I64:{ *:[i64] }:$src) |
| 26385 | /* 53632*/ 0, /*End of Scope*/ |
| 26386 | /* 53633*/ 0, /*End of Scope*/ |
| 26387 | /* 53634*/ /*SwitchOpcode*/ 22, TARGET_VAL(ISD::CALLSEQ_START),// ->53659 |
| 26388 | /* 53637*/ OPC_RecordNode, // #0 = 'WebAssemblycallseq_start' chained node |
| 26389 | /* 53638*/ OPC_RecordChild1, // #1 = $amt |
| 26390 | /* 53639*/ OPC_MoveChild1, |
| 26391 | /* 53640*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| 26392 | /* 53643*/ OPC_MoveParent, |
| 26393 | /* 53644*/ OPC_RecordChild2, // #2 = $amt2 |
| 26394 | /* 53645*/ OPC_MoveChild2, |
| 26395 | /* 53646*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| 26396 | /* 53649*/ OPC_MoveParent, |
| 26397 | /* 53650*/ OPC_EmitMergeInputChains1_0, |
| 26398 | /* 53651*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADJCALLSTACKDOWN), 0|OPFL_Chain|OPFL_GlueOutput, |
| 26399 | MVT::i32, 2/*#Ops*/, 1, 2, |
| 26400 | // Src: (WebAssemblycallseq_start (timm:{ *:[iPTR] }):$amt, (timm:{ *:[iPTR] }):$amt2) - Complexity = 9 |
| 26401 | // Dst: (ADJCALLSTACKDOWN:{ *:[i32] } (timm:{ *:[i32] }):$amt, (timm:{ *:[i32] }):$amt2) |
| 26402 | /* 53659*/ /*SwitchOpcode*/ 23, TARGET_VAL(ISD::CALLSEQ_END),// ->53685 |
| 26403 | /* 53662*/ OPC_RecordNode, // #0 = 'WebAssemblycallseq_end' chained node |
| 26404 | /* 53663*/ OPC_CaptureGlueInput, |
| 26405 | /* 53664*/ OPC_RecordChild1, // #1 = $amt |
| 26406 | /* 53665*/ OPC_MoveChild1, |
| 26407 | /* 53666*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| 26408 | /* 53669*/ OPC_MoveParent, |
| 26409 | /* 53670*/ OPC_RecordChild2, // #2 = $amt2 |
| 26410 | /* 53671*/ OPC_MoveChild2, |
| 26411 | /* 53672*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| 26412 | /* 53675*/ OPC_MoveParent, |
| 26413 | /* 53676*/ OPC_EmitMergeInputChains1_0, |
| 26414 | /* 53677*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADJCALLSTACKUP), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput, |
| 26415 | MVT::i32, 2/*#Ops*/, 1, 2, |
| 26416 | // Src: (WebAssemblycallseq_end (timm:{ *:[iPTR] }):$amt, (timm:{ *:[iPTR] }):$amt2) - Complexity = 9 |
| 26417 | // Dst: (ADJCALLSTACKUP:{ *:[i32] } (timm:{ *:[i32] }):$amt, (timm:{ *:[i32] }):$amt2) |
| 26418 | /* 53685*/ /*SwitchOpcode*/ 21, TARGET_VAL(WebAssemblyISD::THROW),// ->53709 |
| 26419 | /* 53688*/ OPC_RecordNode, // #0 = 'WebAssemblythrow' chained node |
| 26420 | /* 53689*/ OPC_MoveChild1, |
| 26421 | /* 53690*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 26422 | /* 53693*/ OPC_RecordChild0, // #1 = $tag |
| 26423 | /* 53694*/ OPC_MoveChild0, |
| 26424 | /* 53695*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetExternalSymbol), |
| 26425 | /* 53698*/ OPC_MoveParent, |
| 26426 | /* 53699*/ OPC_MoveParent, |
| 26427 | /* 53700*/ OPC_CheckPatternPredicate, 9, // (Subtarget->hasExceptionHandling()) |
| 26428 | /* 53702*/ OPC_EmitMergeInputChains1_0, |
| 26429 | /* 53703*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::THROW), 0|OPFL_Chain|OPFL_Variadic1, |
| 26430 | 1/*#Ops*/, 1, |
| 26431 | // Src: (WebAssemblythrow (WebAssemblywrapper:{ *:[iPTR] } (texternalsym:{ *:[iPTR] }):$tag)) - Complexity = 9 |
| 26432 | // Dst: (THROW (texternalsym:{ *:[i32] }):$tag) |
| 26433 | /* 53709*/ /*SwitchOpcode*/ 24, TARGET_VAL(WebAssemblyISD::CATCH),// ->53736 |
| 26434 | /* 53712*/ OPC_RecordNode, // #0 = 'WebAssemblycatch' chained node |
| 26435 | /* 53713*/ OPC_MoveChild1, |
| 26436 | /* 53714*/ OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper), |
| 26437 | /* 53717*/ OPC_RecordChild0, // #1 = $tag |
| 26438 | /* 53718*/ OPC_MoveChild0, |
| 26439 | /* 53719*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetExternalSymbol), |
| 26440 | /* 53722*/ OPC_MoveParent, |
| 26441 | /* 53723*/ OPC_MoveParent, |
| 26442 | /* 53724*/ OPC_CheckType, MVT::i32, |
| 26443 | /* 53726*/ OPC_CheckPatternPredicate, 9, // (Subtarget->hasExceptionHandling()) |
| 26444 | /* 53728*/ OPC_EmitMergeInputChains1_0, |
| 26445 | /* 53729*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CATCH), 0|OPFL_Chain, |
| 26446 | MVT::i32, 1/*#Ops*/, 1, |
| 26447 | // Src: (WebAssemblycatch:{ *:[i32] } (WebAssemblywrapper:{ *:[iPTR] } (texternalsym:{ *:[iPTR] }):$tag)) - Complexity = 9 |
| 26448 | // Dst: (CATCH:{ *:[i32] } (texternalsym:{ *:[i32] }):$tag) |
| 26449 | /* 53736*/ /*SwitchOpcode*/ 72, TARGET_VAL(WebAssemblyISD::MEMORY_COPY),// ->53811 |
| 26450 | /* 53739*/ OPC_RecordNode, // #0 = 'wasm_memcpy' chained node |
| 26451 | /* 53740*/ OPC_RecordChild1, // #1 = $src_idx |
| 26452 | /* 53741*/ OPC_MoveChild1, |
| 26453 | /* 53742*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 26454 | /* 53745*/ OPC_CheckType, MVT::i32, |
| 26455 | /* 53747*/ OPC_MoveParent, |
| 26456 | /* 53748*/ OPC_RecordChild2, // #2 = $dst_idx |
| 26457 | /* 53749*/ OPC_MoveChild2, |
| 26458 | /* 53750*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 26459 | /* 53753*/ OPC_CheckType, MVT::i32, |
| 26460 | /* 53755*/ OPC_MoveParent, |
| 26461 | /* 53756*/ OPC_RecordChild3, // #3 = $dst |
| 26462 | /* 53757*/ OPC_Scope, 25, /*->53784*/ // 2 children in Scope |
| 26463 | /* 53759*/ OPC_CheckChild3Type, MVT::i32, |
| 26464 | /* 53761*/ OPC_RecordChild4, // #4 = $src |
| 26465 | /* 53762*/ OPC_CheckChild4Type, MVT::i32, |
| 26466 | /* 53764*/ OPC_RecordChild5, // #5 = $len |
| 26467 | /* 53765*/ OPC_CheckChild5Type, MVT::i32, |
| 26468 | /* 53767*/ OPC_CheckPatternPredicate, 12, // (Subtarget->hasBulkMemory()) |
| 26469 | /* 53769*/ OPC_EmitMergeInputChains1_0, |
| 26470 | /* 53770*/ OPC_EmitConvertToTarget, 1, |
| 26471 | /* 53772*/ OPC_EmitConvertToTarget, 2, |
| 26472 | /* 53774*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::anonymous_4565MEMORY_COPY_A32), 0|OPFL_Chain, |
| 26473 | 5/*#Ops*/, 6, 7, 3, 4, 5, |
| 26474 | // Src: (wasm_memcpy (imm:{ *:[i32] }):$src_idx, (imm:{ *:[i32] }):$dst_idx, I32:{ *:[i32] }:$dst, I32:{ *:[i32] }:$src, I32:{ *:[i32] }:$len) - Complexity = 9 |
| 26475 | // Dst: (anonymous_4565MEMORY_COPY_A32 (imm:{ *:[i32] }):$src_idx, (imm:{ *:[i32] }):$dst_idx, I32:{ *:[i32] }:$dst, I32:{ *:[i32] }:$src, I32:{ *:[i32] }:$len) |
| 26476 | /* 53784*/ /*Scope*/ 25, /*->53810*/ |
| 26477 | /* 53785*/ OPC_CheckChild3Type, MVT::i64, |
| 26478 | /* 53787*/ OPC_RecordChild4, // #4 = $src |
| 26479 | /* 53788*/ OPC_CheckChild4Type, MVT::i64, |
| 26480 | /* 53790*/ OPC_RecordChild5, // #5 = $len |
| 26481 | /* 53791*/ OPC_CheckChild5Type, MVT::i64, |
| 26482 | /* 53793*/ OPC_CheckPatternPredicate, 12, // (Subtarget->hasBulkMemory()) |
| 26483 | /* 53795*/ OPC_EmitMergeInputChains1_0, |
| 26484 | /* 53796*/ OPC_EmitConvertToTarget, 1, |
| 26485 | /* 53798*/ OPC_EmitConvertToTarget, 2, |
| 26486 | /* 53800*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::anonymous_4566MEMORY_COPY_A64), 0|OPFL_Chain, |
| 26487 | 5/*#Ops*/, 6, 7, 3, 4, 5, |
| 26488 | // Src: (wasm_memcpy (imm:{ *:[i32] }):$src_idx, (imm:{ *:[i32] }):$dst_idx, I64:{ *:[i64] }:$dst, I64:{ *:[i64] }:$src, I64:{ *:[i64] }:$len) - Complexity = 9 |
| 26489 | // Dst: (anonymous_4566MEMORY_COPY_A64 (imm:{ *:[i32] }):$src_idx, (imm:{ *:[i32] }):$dst_idx, I64:{ *:[i64] }:$dst, I64:{ *:[i64] }:$src, I64:{ *:[i64] }:$len) |
| 26490 | /* 53810*/ 0, /*End of Scope*/ |
| 26491 | /* 53811*/ /*SwitchOpcode*/ 110|128,12/*1646*/, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),// ->55461 |
| 26492 | /* 53815*/ OPC_Scope, 64, /*->53881*/ // 43 children in Scope |
| 26493 | /* 53817*/ OPC_CheckChild0Integer, 75|128,67/*8651*/, |
| 26494 | /* 53820*/ OPC_RecordChild1, // #0 = $src |
| 26495 | /* 53821*/ OPC_Scope, 22, /*->53845*/ // 3 children in Scope |
| 26496 | /* 53823*/ OPC_CheckChild1Type, MVT::f32, |
| 26497 | /* 53825*/ OPC_SwitchType /*2 cases */, 7, MVT::i32,// ->53835 |
| 26498 | /* 53828*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_TRUNC_S_SAT_F32), 0, |
| 26499 | MVT::i32, 1/*#Ops*/, 0, |
| 26500 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8651:{ *:[iPTR] }, F32:{ *:[f32] }:$src) - Complexity = 8 |
| 26501 | // Dst: (I32_TRUNC_S_SAT_F32:{ *:[i32] } F32:{ *:[f32] }:$src) |
| 26502 | /* 53835*/ /*SwitchType*/ 7, MVT::i64,// ->53844 |
| 26503 | /* 53837*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_TRUNC_S_SAT_F32), 0, |
| 26504 | MVT::i64, 1/*#Ops*/, 0, |
| 26505 | // Src: (intrinsic_wo_chain:{ *:[i64] } 8651:{ *:[iPTR] }, F32:{ *:[f32] }:$src) - Complexity = 8 |
| 26506 | // Dst: (I64_TRUNC_S_SAT_F32:{ *:[i64] } F32:{ *:[f32] }:$src) |
| 26507 | /* 53844*/ 0, // EndSwitchType |
| 26508 | /* 53845*/ /*Scope*/ 22, /*->53868*/ |
| 26509 | /* 53846*/ OPC_CheckChild1Type, MVT::f64, |
| 26510 | /* 53848*/ OPC_SwitchType /*2 cases */, 7, MVT::i32,// ->53858 |
| 26511 | /* 53851*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_TRUNC_S_SAT_F64), 0, |
| 26512 | MVT::i32, 1/*#Ops*/, 0, |
| 26513 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8651:{ *:[iPTR] }, F64:{ *:[f64] }:$src) - Complexity = 8 |
| 26514 | // Dst: (I32_TRUNC_S_SAT_F64:{ *:[i32] } F64:{ *:[f64] }:$src) |
| 26515 | /* 53858*/ /*SwitchType*/ 7, MVT::i64,// ->53867 |
| 26516 | /* 53860*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_TRUNC_S_SAT_F64), 0, |
| 26517 | MVT::i64, 1/*#Ops*/, 0, |
| 26518 | // Src: (intrinsic_wo_chain:{ *:[i64] } 8651:{ *:[iPTR] }, F64:{ *:[f64] }:$src) - Complexity = 8 |
| 26519 | // Dst: (I64_TRUNC_S_SAT_F64:{ *:[i64] } F64:{ *:[f64] }:$src) |
| 26520 | /* 53867*/ 0, // EndSwitchType |
| 26521 | /* 53868*/ /*Scope*/ 11, /*->53880*/ |
| 26522 | /* 53869*/ OPC_CheckChild1Type, MVT::v4f32, |
| 26523 | /* 53871*/ OPC_CheckType, MVT::v4i32, |
| 26524 | /* 53873*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::fp_to_sint_I32x4), 0, |
| 26525 | MVT::v4i32, 1/*#Ops*/, 0, |
| 26526 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8651:{ *:[iPTR] }, V128:{ *:[v4f32] }:$src) - Complexity = 8 |
| 26527 | // Dst: (fp_to_sint_I32x4:{ *:[v4i32] } ?:{ *:[v4f32] }:$src) |
| 26528 | /* 53880*/ 0, /*End of Scope*/ |
| 26529 | /* 53881*/ /*Scope*/ 64, /*->53946*/ |
| 26530 | /* 53882*/ OPC_CheckChild0Integer, 76|128,67/*8652*/, |
| 26531 | /* 53885*/ OPC_RecordChild1, // #0 = $src |
| 26532 | /* 53886*/ OPC_Scope, 22, /*->53910*/ // 3 children in Scope |
| 26533 | /* 53888*/ OPC_CheckChild1Type, MVT::f32, |
| 26534 | /* 53890*/ OPC_SwitchType /*2 cases */, 7, MVT::i32,// ->53900 |
| 26535 | /* 53893*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_TRUNC_U_SAT_F32), 0, |
| 26536 | MVT::i32, 1/*#Ops*/, 0, |
| 26537 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8652:{ *:[iPTR] }, F32:{ *:[f32] }:$src) - Complexity = 8 |
| 26538 | // Dst: (I32_TRUNC_U_SAT_F32:{ *:[i32] } F32:{ *:[f32] }:$src) |
| 26539 | /* 53900*/ /*SwitchType*/ 7, MVT::i64,// ->53909 |
| 26540 | /* 53902*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_TRUNC_U_SAT_F32), 0, |
| 26541 | MVT::i64, 1/*#Ops*/, 0, |
| 26542 | // Src: (intrinsic_wo_chain:{ *:[i64] } 8652:{ *:[iPTR] }, F32:{ *:[f32] }:$src) - Complexity = 8 |
| 26543 | // Dst: (I64_TRUNC_U_SAT_F32:{ *:[i64] } F32:{ *:[f32] }:$src) |
| 26544 | /* 53909*/ 0, // EndSwitchType |
| 26545 | /* 53910*/ /*Scope*/ 22, /*->53933*/ |
| 26546 | /* 53911*/ OPC_CheckChild1Type, MVT::f64, |
| 26547 | /* 53913*/ OPC_SwitchType /*2 cases */, 7, MVT::i32,// ->53923 |
| 26548 | /* 53916*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_TRUNC_U_SAT_F64), 0, |
| 26549 | MVT::i32, 1/*#Ops*/, 0, |
| 26550 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8652:{ *:[iPTR] }, F64:{ *:[f64] }:$src) - Complexity = 8 |
| 26551 | // Dst: (I32_TRUNC_U_SAT_F64:{ *:[i32] } F64:{ *:[f64] }:$src) |
| 26552 | /* 53923*/ /*SwitchType*/ 7, MVT::i64,// ->53932 |
| 26553 | /* 53925*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_TRUNC_U_SAT_F64), 0, |
| 26554 | MVT::i64, 1/*#Ops*/, 0, |
| 26555 | // Src: (intrinsic_wo_chain:{ *:[i64] } 8652:{ *:[iPTR] }, F64:{ *:[f64] }:$src) - Complexity = 8 |
| 26556 | // Dst: (I64_TRUNC_U_SAT_F64:{ *:[i64] } F64:{ *:[f64] }:$src) |
| 26557 | /* 53932*/ 0, // EndSwitchType |
| 26558 | /* 53933*/ /*Scope*/ 11, /*->53945*/ |
| 26559 | /* 53934*/ OPC_CheckChild1Type, MVT::v4f32, |
| 26560 | /* 53936*/ OPC_CheckType, MVT::v4i32, |
| 26561 | /* 53938*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::fp_to_uint_I32x4), 0, |
| 26562 | MVT::v4i32, 1/*#Ops*/, 0, |
| 26563 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8652:{ *:[iPTR] }, V128:{ *:[v4f32] }:$src) - Complexity = 8 |
| 26564 | // Dst: (fp_to_uint_I32x4:{ *:[v4i32] } ?:{ *:[v4f32] }:$src) |
| 26565 | /* 53945*/ 0, /*End of Scope*/ |
| 26566 | /* 53946*/ /*Scope*/ 52, /*->53999*/ |
| 26567 | /* 53947*/ OPC_CheckChild0Integer, 79|128,67/*8655*/, |
| 26568 | /* 53950*/ OPC_RecordChild1, // #0 = $src |
| 26569 | /* 53951*/ OPC_Scope, 22, /*->53975*/ // 2 children in Scope |
| 26570 | /* 53953*/ OPC_CheckChild1Type, MVT::f32, |
| 26571 | /* 53955*/ OPC_SwitchType /*2 cases */, 7, MVT::i32,// ->53965 |
| 26572 | /* 53958*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_TRUNC_S_F32), 0, |
| 26573 | MVT::i32, 1/*#Ops*/, 0, |
| 26574 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8655:{ *:[iPTR] }, F32:{ *:[f32] }:$src) - Complexity = 8 |
| 26575 | // Dst: (I32_TRUNC_S_F32:{ *:[i32] } F32:{ *:[f32] }:$src) |
| 26576 | /* 53965*/ /*SwitchType*/ 7, MVT::i64,// ->53974 |
| 26577 | /* 53967*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_TRUNC_S_F32), 0, |
| 26578 | MVT::i64, 1/*#Ops*/, 0, |
| 26579 | // Src: (intrinsic_wo_chain:{ *:[i64] } 8655:{ *:[iPTR] }, F32:{ *:[f32] }:$src) - Complexity = 8 |
| 26580 | // Dst: (I64_TRUNC_S_F32:{ *:[i64] } F32:{ *:[f32] }:$src) |
| 26581 | /* 53974*/ 0, // EndSwitchType |
| 26582 | /* 53975*/ /*Scope*/ 22, /*->53998*/ |
| 26583 | /* 53976*/ OPC_CheckChild1Type, MVT::f64, |
| 26584 | /* 53978*/ OPC_SwitchType /*2 cases */, 7, MVT::i32,// ->53988 |
| 26585 | /* 53981*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_TRUNC_S_F64), 0, |
| 26586 | MVT::i32, 1/*#Ops*/, 0, |
| 26587 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8655:{ *:[iPTR] }, F64:{ *:[f64] }:$src) - Complexity = 8 |
| 26588 | // Dst: (I32_TRUNC_S_F64:{ *:[i32] } F64:{ *:[f64] }:$src) |
| 26589 | /* 53988*/ /*SwitchType*/ 7, MVT::i64,// ->53997 |
| 26590 | /* 53990*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_TRUNC_S_F64), 0, |
| 26591 | MVT::i64, 1/*#Ops*/, 0, |
| 26592 | // Src: (intrinsic_wo_chain:{ *:[i64] } 8655:{ *:[iPTR] }, F64:{ *:[f64] }:$src) - Complexity = 8 |
| 26593 | // Dst: (I64_TRUNC_S_F64:{ *:[i64] } F64:{ *:[f64] }:$src) |
| 26594 | /* 53997*/ 0, // EndSwitchType |
| 26595 | /* 53998*/ 0, /*End of Scope*/ |
| 26596 | /* 53999*/ /*Scope*/ 52, /*->54052*/ |
| 26597 | /* 54000*/ OPC_CheckChild0Integer, 80|128,67/*8656*/, |
| 26598 | /* 54003*/ OPC_RecordChild1, // #0 = $src |
| 26599 | /* 54004*/ OPC_Scope, 22, /*->54028*/ // 2 children in Scope |
| 26600 | /* 54006*/ OPC_CheckChild1Type, MVT::f32, |
| 26601 | /* 54008*/ OPC_SwitchType /*2 cases */, 7, MVT::i32,// ->54018 |
| 26602 | /* 54011*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_TRUNC_U_F32), 0, |
| 26603 | MVT::i32, 1/*#Ops*/, 0, |
| 26604 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8656:{ *:[iPTR] }, F32:{ *:[f32] }:$src) - Complexity = 8 |
| 26605 | // Dst: (I32_TRUNC_U_F32:{ *:[i32] } F32:{ *:[f32] }:$src) |
| 26606 | /* 54018*/ /*SwitchType*/ 7, MVT::i64,// ->54027 |
| 26607 | /* 54020*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_TRUNC_U_F32), 0, |
| 26608 | MVT::i64, 1/*#Ops*/, 0, |
| 26609 | // Src: (intrinsic_wo_chain:{ *:[i64] } 8656:{ *:[iPTR] }, F32:{ *:[f32] }:$src) - Complexity = 8 |
| 26610 | // Dst: (I64_TRUNC_U_F32:{ *:[i64] } F32:{ *:[f32] }:$src) |
| 26611 | /* 54027*/ 0, // EndSwitchType |
| 26612 | /* 54028*/ /*Scope*/ 22, /*->54051*/ |
| 26613 | /* 54029*/ OPC_CheckChild1Type, MVT::f64, |
| 26614 | /* 54031*/ OPC_SwitchType /*2 cases */, 7, MVT::i32,// ->54041 |
| 26615 | /* 54034*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_TRUNC_U_F64), 0, |
| 26616 | MVT::i32, 1/*#Ops*/, 0, |
| 26617 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8656:{ *:[iPTR] }, F64:{ *:[f64] }:$src) - Complexity = 8 |
| 26618 | // Dst: (I32_TRUNC_U_F64:{ *:[i32] } F64:{ *:[f64] }:$src) |
| 26619 | /* 54041*/ /*SwitchType*/ 7, MVT::i64,// ->54050 |
| 26620 | /* 54043*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_TRUNC_U_F64), 0, |
| 26621 | MVT::i64, 1/*#Ops*/, 0, |
| 26622 | // Src: (intrinsic_wo_chain:{ *:[i64] } 8656:{ *:[iPTR] }, F64:{ *:[f64] }:$src) - Complexity = 8 |
| 26623 | // Dst: (I64_TRUNC_U_F64:{ *:[i64] } F64:{ *:[f64] }:$src) |
| 26624 | /* 54050*/ 0, // EndSwitchType |
| 26625 | /* 54051*/ 0, /*End of Scope*/ |
| 26626 | /* 54052*/ /*Scope*/ 54, /*->54107*/ |
| 26627 | /* 54053*/ OPC_CheckChild0Integer, 15|128,67/*8591*/, |
| 26628 | /* 54056*/ OPC_RecordChild1, // #0 = $vec |
| 26629 | /* 54057*/ OPC_Scope, 11, /*->54070*/ // 4 children in Scope |
| 26630 | /* 54059*/ OPC_CheckChild1Type, MVT::v16i8, |
| 26631 | /* 54061*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26632 | /* 54063*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I8x16), 0, |
| 26633 | MVT::i32, 1/*#Ops*/, 0, |
| 26634 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v16i8] }:$vec) - Complexity = 8 |
| 26635 | // Dst: (ANYTRUE_I8x16:{ *:[i32] } V128:{ *:[v16i8] }:$vec) |
| 26636 | /* 54070*/ /*Scope*/ 11, /*->54082*/ |
| 26637 | /* 54071*/ OPC_CheckChild1Type, MVT::v8i16, |
| 26638 | /* 54073*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26639 | /* 54075*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I16x8), 0, |
| 26640 | MVT::i32, 1/*#Ops*/, 0, |
| 26641 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v8i16] }:$vec) - Complexity = 8 |
| 26642 | // Dst: (ANYTRUE_I16x8:{ *:[i32] } V128:{ *:[v8i16] }:$vec) |
| 26643 | /* 54082*/ /*Scope*/ 11, /*->54094*/ |
| 26644 | /* 54083*/ OPC_CheckChild1Type, MVT::v4i32, |
| 26645 | /* 54085*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26646 | /* 54087*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I32x4), 0, |
| 26647 | MVT::i32, 1/*#Ops*/, 0, |
| 26648 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v4i32] }:$vec) - Complexity = 8 |
| 26649 | // Dst: (ANYTRUE_I32x4:{ *:[i32] } V128:{ *:[v4i32] }:$vec) |
| 26650 | /* 54094*/ /*Scope*/ 11, /*->54106*/ |
| 26651 | /* 54095*/ OPC_CheckChild1Type, MVT::v2i64, |
| 26652 | /* 54097*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26653 | /* 54099*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ANYTRUE_I64x2), 0, |
| 26654 | MVT::i32, 1/*#Ops*/, 0, |
| 26655 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8591:{ *:[iPTR] }, V128:{ *:[v2i64] }:$vec) - Complexity = 8 |
| 26656 | // Dst: (ANYTRUE_I64x2:{ *:[i32] } V128:{ *:[v2i64] }:$vec) |
| 26657 | /* 54106*/ 0, /*End of Scope*/ |
| 26658 | /* 54107*/ /*Scope*/ 54, /*->54162*/ |
| 26659 | /* 54108*/ OPC_CheckChild0Integer, 14|128,67/*8590*/, |
| 26660 | /* 54111*/ OPC_RecordChild1, // #0 = $vec |
| 26661 | /* 54112*/ OPC_Scope, 11, /*->54125*/ // 4 children in Scope |
| 26662 | /* 54114*/ OPC_CheckChild1Type, MVT::v16i8, |
| 26663 | /* 54116*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26664 | /* 54118*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I8x16), 0, |
| 26665 | MVT::i32, 1/*#Ops*/, 0, |
| 26666 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v16i8] }:$vec) - Complexity = 8 |
| 26667 | // Dst: (ALLTRUE_I8x16:{ *:[i32] } V128:{ *:[v16i8] }:$vec) |
| 26668 | /* 54125*/ /*Scope*/ 11, /*->54137*/ |
| 26669 | /* 54126*/ OPC_CheckChild1Type, MVT::v8i16, |
| 26670 | /* 54128*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26671 | /* 54130*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I16x8), 0, |
| 26672 | MVT::i32, 1/*#Ops*/, 0, |
| 26673 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v8i16] }:$vec) - Complexity = 8 |
| 26674 | // Dst: (ALLTRUE_I16x8:{ *:[i32] } V128:{ *:[v8i16] }:$vec) |
| 26675 | /* 54137*/ /*Scope*/ 11, /*->54149*/ |
| 26676 | /* 54138*/ OPC_CheckChild1Type, MVT::v4i32, |
| 26677 | /* 54140*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26678 | /* 54142*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I32x4), 0, |
| 26679 | MVT::i32, 1/*#Ops*/, 0, |
| 26680 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v4i32] }:$vec) - Complexity = 8 |
| 26681 | // Dst: (ALLTRUE_I32x4:{ *:[i32] } V128:{ *:[v4i32] }:$vec) |
| 26682 | /* 54149*/ /*Scope*/ 11, /*->54161*/ |
| 26683 | /* 54150*/ OPC_CheckChild1Type, MVT::v2i64, |
| 26684 | /* 54152*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26685 | /* 54154*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ALLTRUE_I64x2), 0, |
| 26686 | MVT::i32, 1/*#Ops*/, 0, |
| 26687 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8590:{ *:[iPTR] }, V128:{ *:[v2i64] }:$vec) - Complexity = 8 |
| 26688 | // Dst: (ALLTRUE_I64x2:{ *:[i32] } V128:{ *:[v2i64] }:$vec) |
| 26689 | /* 54161*/ 0, /*End of Scope*/ |
| 26690 | /* 54162*/ /*Scope*/ 54, /*->54217*/ |
| 26691 | /* 54163*/ OPC_CheckChild0Integer, 17|128,67/*8593*/, |
| 26692 | /* 54166*/ OPC_RecordChild1, // #0 = $vec |
| 26693 | /* 54167*/ OPC_Scope, 11, /*->54180*/ // 4 children in Scope |
| 26694 | /* 54169*/ OPC_CheckChild1Type, MVT::v16i8, |
| 26695 | /* 54171*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26696 | /* 54173*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITMASK_I8x16), 0, |
| 26697 | MVT::i32, 1/*#Ops*/, 0, |
| 26698 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8593:{ *:[iPTR] }, V128:{ *:[v16i8] }:$vec) - Complexity = 8 |
| 26699 | // Dst: (BITMASK_I8x16:{ *:[i32] } V128:{ *:[v16i8] }:$vec) |
| 26700 | /* 54180*/ /*Scope*/ 11, /*->54192*/ |
| 26701 | /* 54181*/ OPC_CheckChild1Type, MVT::v8i16, |
| 26702 | /* 54183*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26703 | /* 54185*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITMASK_I16x8), 0, |
| 26704 | MVT::i32, 1/*#Ops*/, 0, |
| 26705 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8593:{ *:[iPTR] }, V128:{ *:[v8i16] }:$vec) - Complexity = 8 |
| 26706 | // Dst: (BITMASK_I16x8:{ *:[i32] } V128:{ *:[v8i16] }:$vec) |
| 26707 | /* 54192*/ /*Scope*/ 11, /*->54204*/ |
| 26708 | /* 54193*/ OPC_CheckChild1Type, MVT::v4i32, |
| 26709 | /* 54195*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26710 | /* 54197*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITMASK_I32x4), 0, |
| 26711 | MVT::i32, 1/*#Ops*/, 0, |
| 26712 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8593:{ *:[iPTR] }, V128:{ *:[v4i32] }:$vec) - Complexity = 8 |
| 26713 | // Dst: (BITMASK_I32x4:{ *:[i32] } V128:{ *:[v4i32] }:$vec) |
| 26714 | /* 54204*/ /*Scope*/ 11, /*->54216*/ |
| 26715 | /* 54205*/ OPC_CheckChild1Type, MVT::v2i64, |
| 26716 | /* 54207*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26717 | /* 54209*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITMASK_I64x2), 0, |
| 26718 | MVT::i32, 1/*#Ops*/, 0, |
| 26719 | // Src: (intrinsic_wo_chain:{ *:[i32] } 8593:{ *:[iPTR] }, V128:{ *:[v2i64] }:$vec) - Complexity = 8 |
| 26720 | // Dst: (BITMASK_I64x2:{ *:[i32] } V128:{ *:[v2i64] }:$vec) |
| 26721 | /* 54216*/ 0, /*End of Scope*/ |
| 26722 | /* 54217*/ /*Scope*/ 13, /*->54231*/ |
| 26723 | /* 54218*/ OPC_CheckChild0Integer, 69|128,67/*8645*/, |
| 26724 | /* 54221*/ OPC_RecordChild1, // #0 = $src |
| 26725 | /* 54222*/ OPC_RecordChild2, // #1 = $mask |
| 26726 | /* 54223*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SWIZZLE), 0, |
| 26727 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 26728 | // Src: (intrinsic_wo_chain:{ *:[v16i8] } 8645:{ *:[iPTR] }, V128:{ *:[v16i8] }:$src, V128:{ *:[v16i8] }:$mask) - Complexity = 8 |
| 26729 | // Dst: (SWIZZLE:{ *:[v16i8] } ?:{ *:[v16i8] }:$src, ?:{ *:[v16i8] }:$mask) |
| 26730 | /* 54231*/ /*Scope*/ 15, /*->54247*/ |
| 26731 | /* 54232*/ OPC_CheckChild0Integer, 25|128,67/*8601*/, |
| 26732 | /* 54235*/ OPC_RecordChild1, // #0 = $lhs |
| 26733 | /* 54236*/ OPC_RecordChild2, // #1 = $rhs |
| 26734 | /* 54237*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26735 | /* 54239*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EQ_v2i64), 0, |
| 26736 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 26737 | // Src: (intrinsic_wo_chain:{ *:[v2i64] } 8601:{ *:[iPTR] }, V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) - Complexity = 8 |
| 26738 | // Dst: (EQ_v2i64:{ *:[v2i64] } V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) |
| 26739 | /* 54247*/ /*Scope*/ 120, /*->54368*/ |
| 26740 | /* 54248*/ OPC_CheckChild0Integer, 18|128,67/*8594*/, |
| 26741 | /* 54251*/ OPC_RecordChild1, // #0 = $v1 |
| 26742 | /* 54252*/ OPC_SwitchType /*6 cases */, 17, MVT::v16i8,// ->54272 |
| 26743 | /* 54255*/ OPC_CheckChild1Type, MVT::v16i8, |
| 26744 | /* 54257*/ OPC_RecordChild2, // #1 = $v2 |
| 26745 | /* 54258*/ OPC_CheckChild2Type, MVT::v16i8, |
| 26746 | /* 54260*/ OPC_RecordChild3, // #2 = $c |
| 26747 | /* 54261*/ OPC_CheckChild3Type, MVT::v16i8, |
| 26748 | /* 54263*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 26749 | MVT::v16i8, 3/*#Ops*/, 0, 1, 2, |
| 26750 | // Src: (intrinsic_wo_chain:{ *:[v16i8] } 8594:{ *:[iPTR] }, V128:{ *:[v16i8] }:$v1, V128:{ *:[v16i8] }:$v2, V128:{ *:[v16i8] }:$c) - Complexity = 8 |
| 26751 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 26752 | /* 54272*/ /*SwitchType*/ 17, MVT::v8i16,// ->54291 |
| 26753 | /* 54274*/ OPC_CheckChild1Type, MVT::v8i16, |
| 26754 | /* 54276*/ OPC_RecordChild2, // #1 = $v2 |
| 26755 | /* 54277*/ OPC_CheckChild2Type, MVT::v8i16, |
| 26756 | /* 54279*/ OPC_RecordChild3, // #2 = $c |
| 26757 | /* 54280*/ OPC_CheckChild3Type, MVT::v8i16, |
| 26758 | /* 54282*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 26759 | MVT::v8i16, 3/*#Ops*/, 0, 1, 2, |
| 26760 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8594:{ *:[iPTR] }, V128:{ *:[v8i16] }:$v1, V128:{ *:[v8i16] }:$v2, V128:{ *:[v8i16] }:$c) - Complexity = 8 |
| 26761 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 26762 | /* 54291*/ /*SwitchType*/ 17, MVT::v4i32,// ->54310 |
| 26763 | /* 54293*/ OPC_CheckChild1Type, MVT::v4i32, |
| 26764 | /* 54295*/ OPC_RecordChild2, // #1 = $v2 |
| 26765 | /* 54296*/ OPC_CheckChild2Type, MVT::v4i32, |
| 26766 | /* 54298*/ OPC_RecordChild3, // #2 = $c |
| 26767 | /* 54299*/ OPC_CheckChild3Type, MVT::v4i32, |
| 26768 | /* 54301*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 26769 | MVT::v4i32, 3/*#Ops*/, 0, 1, 2, |
| 26770 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8594:{ *:[iPTR] }, V128:{ *:[v4i32] }:$v1, V128:{ *:[v4i32] }:$v2, V128:{ *:[v4i32] }:$c) - Complexity = 8 |
| 26771 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 26772 | /* 54310*/ /*SwitchType*/ 17, MVT::v2i64,// ->54329 |
| 26773 | /* 54312*/ OPC_CheckChild1Type, MVT::v2i64, |
| 26774 | /* 54314*/ OPC_RecordChild2, // #1 = $v2 |
| 26775 | /* 54315*/ OPC_CheckChild2Type, MVT::v2i64, |
| 26776 | /* 54317*/ OPC_RecordChild3, // #2 = $c |
| 26777 | /* 54318*/ OPC_CheckChild3Type, MVT::v2i64, |
| 26778 | /* 54320*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 26779 | MVT::v2i64, 3/*#Ops*/, 0, 1, 2, |
| 26780 | // Src: (intrinsic_wo_chain:{ *:[v2i64] } 8594:{ *:[iPTR] }, V128:{ *:[v2i64] }:$v1, V128:{ *:[v2i64] }:$v2, V128:{ *:[v2i64] }:$c) - Complexity = 8 |
| 26781 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 26782 | /* 54329*/ /*SwitchType*/ 17, MVT::v4f32,// ->54348 |
| 26783 | /* 54331*/ OPC_CheckChild1Type, MVT::v4f32, |
| 26784 | /* 54333*/ OPC_RecordChild2, // #1 = $v2 |
| 26785 | /* 54334*/ OPC_CheckChild2Type, MVT::v4f32, |
| 26786 | /* 54336*/ OPC_RecordChild3, // #2 = $c |
| 26787 | /* 54337*/ OPC_CheckChild3Type, MVT::v4f32, |
| 26788 | /* 54339*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 26789 | MVT::v4f32, 3/*#Ops*/, 0, 1, 2, |
| 26790 | // Src: (intrinsic_wo_chain:{ *:[v4f32] } 8594:{ *:[iPTR] }, V128:{ *:[v4f32] }:$v1, V128:{ *:[v4f32] }:$v2, V128:{ *:[v4f32] }:$c) - Complexity = 8 |
| 26791 | // Dst: (BITSELECT:{ *:[v4f32] } ?:{ *:[v4f32] }:$v1, ?:{ *:[v4f32] }:$v2, ?:{ *:[v4f32] }:$c) |
| 26792 | /* 54348*/ /*SwitchType*/ 17, MVT::v2f64,// ->54367 |
| 26793 | /* 54350*/ OPC_CheckChild1Type, MVT::v2f64, |
| 26794 | /* 54352*/ OPC_RecordChild2, // #1 = $v2 |
| 26795 | /* 54353*/ OPC_CheckChild2Type, MVT::v2f64, |
| 26796 | /* 54355*/ OPC_RecordChild3, // #2 = $c |
| 26797 | /* 54356*/ OPC_CheckChild3Type, MVT::v2f64, |
| 26798 | /* 54358*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 26799 | MVT::v2f64, 3/*#Ops*/, 0, 1, 2, |
| 26800 | // Src: (intrinsic_wo_chain:{ *:[v2f64] } 8594:{ *:[iPTR] }, V128:{ *:[v2f64] }:$v1, V128:{ *:[v2f64] }:$v2, V128:{ *:[v2f64] }:$c) - Complexity = 8 |
| 26801 | // Dst: (BITSELECT:{ *:[v2f64] } ?:{ *:[v2f64] }:$v1, ?:{ *:[v2f64] }:$v2, ?:{ *:[v2f64] }:$c) |
| 26802 | /* 54367*/ 0, // EndSwitchType |
| 26803 | /* 54368*/ /*Scope*/ 90, /*->54459*/ |
| 26804 | /* 54369*/ OPC_CheckChild0Integer, 62|128,67/*8638*/, |
| 26805 | /* 54372*/ OPC_RecordChild1, // #0 = $v1 |
| 26806 | /* 54373*/ OPC_SwitchType /*4 cases */, 19, MVT::v16i8,// ->54395 |
| 26807 | /* 54376*/ OPC_CheckChild1Type, MVT::v16i8, |
| 26808 | /* 54378*/ OPC_RecordChild2, // #1 = $v2 |
| 26809 | /* 54379*/ OPC_CheckChild2Type, MVT::v16i8, |
| 26810 | /* 54381*/ OPC_RecordChild3, // #2 = $c |
| 26811 | /* 54382*/ OPC_CheckChild3Type, MVT::v16i8, |
| 26812 | /* 54384*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26813 | /* 54386*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::anonymous_4462SIGNSELECT_I8x16), 0, |
| 26814 | MVT::v16i8, 3/*#Ops*/, 0, 1, 2, |
| 26815 | // Src: (intrinsic_wo_chain:{ *:[v16i8] } 8638:{ *:[iPTR] }, V128:{ *:[v16i8] }:$v1, V128:{ *:[v16i8] }:$v2, V128:{ *:[v16i8] }:$c) - Complexity = 8 |
| 26816 | // Dst: (anonymous_4462SIGNSELECT_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$v1, V128:{ *:[v16i8] }:$v2, V128:{ *:[v16i8] }:$c) |
| 26817 | /* 54395*/ /*SwitchType*/ 19, MVT::v8i16,// ->54416 |
| 26818 | /* 54397*/ OPC_CheckChild1Type, MVT::v8i16, |
| 26819 | /* 54399*/ OPC_RecordChild2, // #1 = $v2 |
| 26820 | /* 54400*/ OPC_CheckChild2Type, MVT::v8i16, |
| 26821 | /* 54402*/ OPC_RecordChild3, // #2 = $c |
| 26822 | /* 54403*/ OPC_CheckChild3Type, MVT::v8i16, |
| 26823 | /* 54405*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26824 | /* 54407*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::anonymous_4463SIGNSELECT_I16x8), 0, |
| 26825 | MVT::v8i16, 3/*#Ops*/, 0, 1, 2, |
| 26826 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8638:{ *:[iPTR] }, V128:{ *:[v8i16] }:$v1, V128:{ *:[v8i16] }:$v2, V128:{ *:[v8i16] }:$c) - Complexity = 8 |
| 26827 | // Dst: (anonymous_4463SIGNSELECT_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$v1, V128:{ *:[v8i16] }:$v2, V128:{ *:[v8i16] }:$c) |
| 26828 | /* 54416*/ /*SwitchType*/ 19, MVT::v4i32,// ->54437 |
| 26829 | /* 54418*/ OPC_CheckChild1Type, MVT::v4i32, |
| 26830 | /* 54420*/ OPC_RecordChild2, // #1 = $v2 |
| 26831 | /* 54421*/ OPC_CheckChild2Type, MVT::v4i32, |
| 26832 | /* 54423*/ OPC_RecordChild3, // #2 = $c |
| 26833 | /* 54424*/ OPC_CheckChild3Type, MVT::v4i32, |
| 26834 | /* 54426*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26835 | /* 54428*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::anonymous_4464SIGNSELECT_I32x4), 0, |
| 26836 | MVT::v4i32, 3/*#Ops*/, 0, 1, 2, |
| 26837 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8638:{ *:[iPTR] }, V128:{ *:[v4i32] }:$v1, V128:{ *:[v4i32] }:$v2, V128:{ *:[v4i32] }:$c) - Complexity = 8 |
| 26838 | // Dst: (anonymous_4464SIGNSELECT_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$v1, V128:{ *:[v4i32] }:$v2, V128:{ *:[v4i32] }:$c) |
| 26839 | /* 54437*/ /*SwitchType*/ 19, MVT::v2i64,// ->54458 |
| 26840 | /* 54439*/ OPC_CheckChild1Type, MVT::v2i64, |
| 26841 | /* 54441*/ OPC_RecordChild2, // #1 = $v2 |
| 26842 | /* 54442*/ OPC_CheckChild2Type, MVT::v2i64, |
| 26843 | /* 54444*/ OPC_RecordChild3, // #2 = $c |
| 26844 | /* 54445*/ OPC_CheckChild3Type, MVT::v2i64, |
| 26845 | /* 54447*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26846 | /* 54449*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::anonymous_4465SIGNSELECT_I64x2), 0, |
| 26847 | MVT::v2i64, 3/*#Ops*/, 0, 1, 2, |
| 26848 | // Src: (intrinsic_wo_chain:{ *:[v2i64] } 8638:{ *:[iPTR] }, V128:{ *:[v2i64] }:$v1, V128:{ *:[v2i64] }:$v2, V128:{ *:[v2i64] }:$c) - Complexity = 8 |
| 26849 | // Dst: (anonymous_4465SIGNSELECT_I64x2:{ *:[v2i64] } V128:{ *:[v2i64] }:$v1, V128:{ *:[v2i64] }:$v2, V128:{ *:[v2i64] }:$c) |
| 26850 | /* 54458*/ 0, // EndSwitchType |
| 26851 | /* 54459*/ /*Scope*/ 13, /*->54473*/ |
| 26852 | /* 54460*/ OPC_CheckChild0Integer, 53|128,67/*8629*/, |
| 26853 | /* 54463*/ OPC_RecordChild1, // #0 = $v |
| 26854 | /* 54464*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26855 | /* 54466*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::POPCNT_I8x16), 0, |
| 26856 | MVT::v16i8, 1/*#Ops*/, 0, |
| 26857 | // Src: (intrinsic_wo_chain:{ *:[v16i8] } 8629:{ *:[iPTR] }, V128:{ *:[v16i8] }:$v) - Complexity = 8 |
| 26858 | // Dst: (POPCNT_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$v) |
| 26859 | /* 54473*/ /*Scope*/ 40, /*->54514*/ |
| 26860 | /* 54474*/ OPC_CheckChild0Integer, 67|128,67/*8643*/, |
| 26861 | /* 54477*/ OPC_RecordChild1, // #0 = $lhs |
| 26862 | /* 54478*/ OPC_SwitchType /*2 cases */, 15, MVT::v16i8,// ->54496 |
| 26863 | /* 54481*/ OPC_CheckChild1Type, MVT::v16i8, |
| 26864 | /* 54483*/ OPC_RecordChild2, // #1 = $rhs |
| 26865 | /* 54484*/ OPC_CheckChild2Type, MVT::v16i8, |
| 26866 | /* 54486*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26867 | /* 54488*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_SAT_S_I8x16), 0, |
| 26868 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 26869 | // Src: (intrinsic_wo_chain:{ *:[v16i8] } 8643:{ *:[iPTR] }, V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 8 |
| 26870 | // Dst: (SUB_SAT_S_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 26871 | /* 54496*/ /*SwitchType*/ 15, MVT::v8i16,// ->54513 |
| 26872 | /* 54498*/ OPC_CheckChild1Type, MVT::v8i16, |
| 26873 | /* 54500*/ OPC_RecordChild2, // #1 = $rhs |
| 26874 | /* 54501*/ OPC_CheckChild2Type, MVT::v8i16, |
| 26875 | /* 54503*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26876 | /* 54505*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_SAT_S_I16x8), 0, |
| 26877 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 26878 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8643:{ *:[iPTR] }, V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 8 |
| 26879 | // Dst: (SUB_SAT_S_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 26880 | /* 54513*/ 0, // EndSwitchType |
| 26881 | /* 54514*/ /*Scope*/ 40, /*->54555*/ |
| 26882 | /* 54515*/ OPC_CheckChild0Integer, 68|128,67/*8644*/, |
| 26883 | /* 54518*/ OPC_RecordChild1, // #0 = $lhs |
| 26884 | /* 54519*/ OPC_SwitchType /*2 cases */, 15, MVT::v16i8,// ->54537 |
| 26885 | /* 54522*/ OPC_CheckChild1Type, MVT::v16i8, |
| 26886 | /* 54524*/ OPC_RecordChild2, // #1 = $rhs |
| 26887 | /* 54525*/ OPC_CheckChild2Type, MVT::v16i8, |
| 26888 | /* 54527*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26889 | /* 54529*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_SAT_U_I8x16), 0, |
| 26890 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 26891 | // Src: (intrinsic_wo_chain:{ *:[v16i8] } 8644:{ *:[iPTR] }, V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 8 |
| 26892 | // Dst: (SUB_SAT_U_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 26893 | /* 54537*/ /*SwitchType*/ 15, MVT::v8i16,// ->54554 |
| 26894 | /* 54539*/ OPC_CheckChild1Type, MVT::v8i16, |
| 26895 | /* 54541*/ OPC_RecordChild2, // #1 = $rhs |
| 26896 | /* 54542*/ OPC_CheckChild2Type, MVT::v8i16, |
| 26897 | /* 54544*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26898 | /* 54546*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_SAT_U_I16x8), 0, |
| 26899 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 26900 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8644:{ *:[iPTR] }, V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 8 |
| 26901 | // Dst: (SUB_SAT_U_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 26902 | /* 54554*/ 0, // EndSwitchType |
| 26903 | /* 54555*/ /*Scope*/ 40, /*->54596*/ |
| 26904 | /* 54556*/ OPC_CheckChild0Integer, 16|128,67/*8592*/, |
| 26905 | /* 54559*/ OPC_RecordChild1, // #0 = $lhs |
| 26906 | /* 54560*/ OPC_SwitchType /*2 cases */, 15, MVT::v16i8,// ->54578 |
| 26907 | /* 54563*/ OPC_CheckChild1Type, MVT::v16i8, |
| 26908 | /* 54565*/ OPC_RecordChild2, // #1 = $rhs |
| 26909 | /* 54566*/ OPC_CheckChild2Type, MVT::v16i8, |
| 26910 | /* 54568*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26911 | /* 54570*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::AVGR_U_I8x16), 0, |
| 26912 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 26913 | // Src: (intrinsic_wo_chain:{ *:[v16i8] } 8592:{ *:[iPTR] }, V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 8 |
| 26914 | // Dst: (AVGR_U_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 26915 | /* 54578*/ /*SwitchType*/ 15, MVT::v8i16,// ->54595 |
| 26916 | /* 54580*/ OPC_CheckChild1Type, MVT::v8i16, |
| 26917 | /* 54582*/ OPC_RecordChild2, // #1 = $rhs |
| 26918 | /* 54583*/ OPC_CheckChild2Type, MVT::v8i16, |
| 26919 | /* 54585*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26920 | /* 54587*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::AVGR_U_I16x8), 0, |
| 26921 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 26922 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8592:{ *:[iPTR] }, V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 8 |
| 26923 | // Dst: (AVGR_U_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 26924 | /* 54595*/ 0, // EndSwitchType |
| 26925 | /* 54596*/ /*Scope*/ 15, /*->54612*/ |
| 26926 | /* 54597*/ OPC_CheckChild0Integer, 24|128,67/*8600*/, |
| 26927 | /* 54600*/ OPC_RecordChild1, // #0 = $lhs |
| 26928 | /* 54601*/ OPC_RecordChild2, // #1 = $rhs |
| 26929 | /* 54602*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26930 | /* 54604*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::DOT), 0, |
| 26931 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 26932 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8600:{ *:[iPTR] }, V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 8 |
| 26933 | // Dst: (DOT:{ *:[v4i32] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 26934 | /* 54612*/ /*Scope*/ 57, /*->54670*/ |
| 26935 | /* 54613*/ OPC_CheckChild0Integer, 30|128,67/*8606*/, |
| 26936 | /* 54616*/ OPC_RecordChild1, // #0 = $lhs |
| 26937 | /* 54617*/ OPC_SwitchType /*3 cases */, 15, MVT::v8i16,// ->54635 |
| 26938 | /* 54620*/ OPC_CheckChild1Type, MVT::v16i8, |
| 26939 | /* 54622*/ OPC_RecordChild2, // #1 = $rhs |
| 26940 | /* 54623*/ OPC_CheckChild2Type, MVT::v16i8, |
| 26941 | /* 54625*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26942 | /* 54627*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTMUL_LOW_S_I16x8), 0, |
| 26943 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 26944 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8606:{ *:[iPTR] }, V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 8 |
| 26945 | // Dst: (EXTMUL_LOW_S_I16x8:{ *:[v8i16] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 26946 | /* 54635*/ /*SwitchType*/ 15, MVT::v4i32,// ->54652 |
| 26947 | /* 54637*/ OPC_CheckChild1Type, MVT::v8i16, |
| 26948 | /* 54639*/ OPC_RecordChild2, // #1 = $rhs |
| 26949 | /* 54640*/ OPC_CheckChild2Type, MVT::v8i16, |
| 26950 | /* 54642*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26951 | /* 54644*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTMUL_LOW_S_I32x4), 0, |
| 26952 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 26953 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8606:{ *:[iPTR] }, V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 8 |
| 26954 | // Dst: (EXTMUL_LOW_S_I32x4:{ *:[v4i32] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 26955 | /* 54652*/ /*SwitchType*/ 15, MVT::v2i64,// ->54669 |
| 26956 | /* 54654*/ OPC_CheckChild1Type, MVT::v4i32, |
| 26957 | /* 54656*/ OPC_RecordChild2, // #1 = $rhs |
| 26958 | /* 54657*/ OPC_CheckChild2Type, MVT::v4i32, |
| 26959 | /* 54659*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26960 | /* 54661*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTMUL_LOW_S_I64x2), 0, |
| 26961 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 26962 | // Src: (intrinsic_wo_chain:{ *:[v2i64] } 8606:{ *:[iPTR] }, V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 8 |
| 26963 | // Dst: (EXTMUL_LOW_S_I64x2:{ *:[v2i64] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 26964 | /* 54669*/ 0, // EndSwitchType |
| 26965 | /* 54670*/ /*Scope*/ 57, /*->54728*/ |
| 26966 | /* 54671*/ OPC_CheckChild0Integer, 28|128,67/*8604*/, |
| 26967 | /* 54674*/ OPC_RecordChild1, // #0 = $lhs |
| 26968 | /* 54675*/ OPC_SwitchType /*3 cases */, 15, MVT::v8i16,// ->54693 |
| 26969 | /* 54678*/ OPC_CheckChild1Type, MVT::v16i8, |
| 26970 | /* 54680*/ OPC_RecordChild2, // #1 = $rhs |
| 26971 | /* 54681*/ OPC_CheckChild2Type, MVT::v16i8, |
| 26972 | /* 54683*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26973 | /* 54685*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTMUL_HIGH_S_I16x8), 0, |
| 26974 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 26975 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8604:{ *:[iPTR] }, V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 8 |
| 26976 | // Dst: (EXTMUL_HIGH_S_I16x8:{ *:[v8i16] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 26977 | /* 54693*/ /*SwitchType*/ 15, MVT::v4i32,// ->54710 |
| 26978 | /* 54695*/ OPC_CheckChild1Type, MVT::v8i16, |
| 26979 | /* 54697*/ OPC_RecordChild2, // #1 = $rhs |
| 26980 | /* 54698*/ OPC_CheckChild2Type, MVT::v8i16, |
| 26981 | /* 54700*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26982 | /* 54702*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTMUL_HIGH_S_I32x4), 0, |
| 26983 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 26984 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8604:{ *:[iPTR] }, V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 8 |
| 26985 | // Dst: (EXTMUL_HIGH_S_I32x4:{ *:[v4i32] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 26986 | /* 54710*/ /*SwitchType*/ 15, MVT::v2i64,// ->54727 |
| 26987 | /* 54712*/ OPC_CheckChild1Type, MVT::v4i32, |
| 26988 | /* 54714*/ OPC_RecordChild2, // #1 = $rhs |
| 26989 | /* 54715*/ OPC_CheckChild2Type, MVT::v4i32, |
| 26990 | /* 54717*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 26991 | /* 54719*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTMUL_HIGH_S_I64x2), 0, |
| 26992 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 26993 | // Src: (intrinsic_wo_chain:{ *:[v2i64] } 8604:{ *:[iPTR] }, V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 8 |
| 26994 | // Dst: (EXTMUL_HIGH_S_I64x2:{ *:[v2i64] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 26995 | /* 54727*/ 0, // EndSwitchType |
| 26996 | /* 54728*/ /*Scope*/ 57, /*->54786*/ |
| 26997 | /* 54729*/ OPC_CheckChild0Integer, 31|128,67/*8607*/, |
| 26998 | /* 54732*/ OPC_RecordChild1, // #0 = $lhs |
| 26999 | /* 54733*/ OPC_SwitchType /*3 cases */, 15, MVT::v8i16,// ->54751 |
| 27000 | /* 54736*/ OPC_CheckChild1Type, MVT::v16i8, |
| 27001 | /* 54738*/ OPC_RecordChild2, // #1 = $rhs |
| 27002 | /* 54739*/ OPC_CheckChild2Type, MVT::v16i8, |
| 27003 | /* 54741*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27004 | /* 54743*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTMUL_LOW_U_I16x8), 0, |
| 27005 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 27006 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8607:{ *:[iPTR] }, V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 8 |
| 27007 | // Dst: (EXTMUL_LOW_U_I16x8:{ *:[v8i16] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 27008 | /* 54751*/ /*SwitchType*/ 15, MVT::v4i32,// ->54768 |
| 27009 | /* 54753*/ OPC_CheckChild1Type, MVT::v8i16, |
| 27010 | /* 54755*/ OPC_RecordChild2, // #1 = $rhs |
| 27011 | /* 54756*/ OPC_CheckChild2Type, MVT::v8i16, |
| 27012 | /* 54758*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27013 | /* 54760*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTMUL_LOW_U_I32x4), 0, |
| 27014 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 27015 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8607:{ *:[iPTR] }, V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 8 |
| 27016 | // Dst: (EXTMUL_LOW_U_I32x4:{ *:[v4i32] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 27017 | /* 54768*/ /*SwitchType*/ 15, MVT::v2i64,// ->54785 |
| 27018 | /* 54770*/ OPC_CheckChild1Type, MVT::v4i32, |
| 27019 | /* 54772*/ OPC_RecordChild2, // #1 = $rhs |
| 27020 | /* 54773*/ OPC_CheckChild2Type, MVT::v4i32, |
| 27021 | /* 54775*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27022 | /* 54777*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTMUL_LOW_U_I64x2), 0, |
| 27023 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 27024 | // Src: (intrinsic_wo_chain:{ *:[v2i64] } 8607:{ *:[iPTR] }, V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 8 |
| 27025 | // Dst: (EXTMUL_LOW_U_I64x2:{ *:[v2i64] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 27026 | /* 54785*/ 0, // EndSwitchType |
| 27027 | /* 54786*/ /*Scope*/ 57, /*->54844*/ |
| 27028 | /* 54787*/ OPC_CheckChild0Integer, 29|128,67/*8605*/, |
| 27029 | /* 54790*/ OPC_RecordChild1, // #0 = $lhs |
| 27030 | /* 54791*/ OPC_SwitchType /*3 cases */, 15, MVT::v8i16,// ->54809 |
| 27031 | /* 54794*/ OPC_CheckChild1Type, MVT::v16i8, |
| 27032 | /* 54796*/ OPC_RecordChild2, // #1 = $rhs |
| 27033 | /* 54797*/ OPC_CheckChild2Type, MVT::v16i8, |
| 27034 | /* 54799*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27035 | /* 54801*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTMUL_HIGH_U_I16x8), 0, |
| 27036 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 27037 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8605:{ *:[iPTR] }, V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 8 |
| 27038 | // Dst: (EXTMUL_HIGH_U_I16x8:{ *:[v8i16] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 27039 | /* 54809*/ /*SwitchType*/ 15, MVT::v4i32,// ->54826 |
| 27040 | /* 54811*/ OPC_CheckChild1Type, MVT::v8i16, |
| 27041 | /* 54813*/ OPC_RecordChild2, // #1 = $rhs |
| 27042 | /* 54814*/ OPC_CheckChild2Type, MVT::v8i16, |
| 27043 | /* 54816*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27044 | /* 54818*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTMUL_HIGH_U_I32x4), 0, |
| 27045 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 27046 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8605:{ *:[iPTR] }, V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 8 |
| 27047 | // Dst: (EXTMUL_HIGH_U_I32x4:{ *:[v4i32] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 27048 | /* 54826*/ /*SwitchType*/ 15, MVT::v2i64,// ->54843 |
| 27049 | /* 54828*/ OPC_CheckChild1Type, MVT::v4i32, |
| 27050 | /* 54830*/ OPC_RecordChild2, // #1 = $rhs |
| 27051 | /* 54831*/ OPC_CheckChild2Type, MVT::v4i32, |
| 27052 | /* 54833*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27053 | /* 54835*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTMUL_HIGH_U_I64x2), 0, |
| 27054 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 27055 | // Src: (intrinsic_wo_chain:{ *:[v2i64] } 8605:{ *:[iPTR] }, V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 8 |
| 27056 | // Dst: (EXTMUL_HIGH_U_I64x2:{ *:[v2i64] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 27057 | /* 54843*/ 0, // EndSwitchType |
| 27058 | /* 54844*/ /*Scope*/ 13, /*->54858*/ |
| 27059 | /* 54845*/ OPC_CheckChild0Integer, 83|128,67/*8659*/, |
| 27060 | /* 54848*/ OPC_RecordChild1, // #0 = $vec |
| 27061 | /* 54849*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27062 | /* 54851*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_widen_low_signed_I64x2), 0, |
| 27063 | MVT::v2i64, 1/*#Ops*/, 0, |
| 27064 | // Src: (intrinsic_wo_chain:{ *:[v2i64] } 8659:{ *:[iPTR] }, V128:{ *:[v4i32] }:$vec) - Complexity = 8 |
| 27065 | // Dst: (int_wasm_widen_low_signed_I64x2:{ *:[v2i64] } V128:{ *:[v4i32] }:$vec) |
| 27066 | /* 54858*/ /*Scope*/ 13, /*->54872*/ |
| 27067 | /* 54859*/ OPC_CheckChild0Integer, 81|128,67/*8657*/, |
| 27068 | /* 54862*/ OPC_RecordChild1, // #0 = $vec |
| 27069 | /* 54863*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27070 | /* 54865*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_widen_high_signed_I64x2), 0, |
| 27071 | MVT::v2i64, 1/*#Ops*/, 0, |
| 27072 | // Src: (intrinsic_wo_chain:{ *:[v2i64] } 8657:{ *:[iPTR] }, V128:{ *:[v4i32] }:$vec) - Complexity = 8 |
| 27073 | // Dst: (int_wasm_widen_high_signed_I64x2:{ *:[v2i64] } V128:{ *:[v4i32] }:$vec) |
| 27074 | /* 54872*/ /*Scope*/ 13, /*->54886*/ |
| 27075 | /* 54873*/ OPC_CheckChild0Integer, 84|128,67/*8660*/, |
| 27076 | /* 54876*/ OPC_RecordChild1, // #0 = $vec |
| 27077 | /* 54877*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27078 | /* 54879*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_widen_low_unsigned_I64x2), 0, |
| 27079 | MVT::v2i64, 1/*#Ops*/, 0, |
| 27080 | // Src: (intrinsic_wo_chain:{ *:[v2i64] } 8660:{ *:[iPTR] }, V128:{ *:[v4i32] }:$vec) - Complexity = 8 |
| 27081 | // Dst: (int_wasm_widen_low_unsigned_I64x2:{ *:[v2i64] } V128:{ *:[v4i32] }:$vec) |
| 27082 | /* 54886*/ /*Scope*/ 13, /*->54900*/ |
| 27083 | /* 54887*/ OPC_CheckChild0Integer, 82|128,67/*8658*/, |
| 27084 | /* 54890*/ OPC_RecordChild1, // #0 = $vec |
| 27085 | /* 54891*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27086 | /* 54893*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_widen_high_unsigned_I64x2), 0, |
| 27087 | MVT::v2i64, 1/*#Ops*/, 0, |
| 27088 | // Src: (intrinsic_wo_chain:{ *:[v2i64] } 8658:{ *:[iPTR] }, V128:{ *:[v4i32] }:$vec) - Complexity = 8 |
| 27089 | // Dst: (int_wasm_widen_high_unsigned_I64x2:{ *:[v2i64] } V128:{ *:[v4i32] }:$vec) |
| 27090 | /* 54900*/ /*Scope*/ 40, /*->54941*/ |
| 27091 | /* 54901*/ OPC_CheckChild0Integer, 48|128,67/*8624*/, |
| 27092 | /* 54904*/ OPC_RecordChild1, // #0 = $low |
| 27093 | /* 54905*/ OPC_SwitchType /*2 cases */, 15, MVT::v16i8,// ->54923 |
| 27094 | /* 54908*/ OPC_CheckChild1Type, MVT::v8i16, |
| 27095 | /* 54910*/ OPC_RecordChild2, // #1 = $high |
| 27096 | /* 54911*/ OPC_CheckChild2Type, MVT::v8i16, |
| 27097 | /* 54913*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27098 | /* 54915*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NARROW_S_I8x16), 0, |
| 27099 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 27100 | // Src: (intrinsic_wo_chain:{ *:[v16i8] } 8624:{ *:[iPTR] }, V128:{ *:[v8i16] }:$low, V128:{ *:[v8i16] }:$high) - Complexity = 8 |
| 27101 | // Dst: (NARROW_S_I8x16:{ *:[v16i8] } V128:{ *:[v8i16] }:$low, V128:{ *:[v8i16] }:$high) |
| 27102 | /* 54923*/ /*SwitchType*/ 15, MVT::v8i16,// ->54940 |
| 27103 | /* 54925*/ OPC_CheckChild1Type, MVT::v4i32, |
| 27104 | /* 54927*/ OPC_RecordChild2, // #1 = $high |
| 27105 | /* 54928*/ OPC_CheckChild2Type, MVT::v4i32, |
| 27106 | /* 54930*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27107 | /* 54932*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NARROW_S_I16x8), 0, |
| 27108 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 27109 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8624:{ *:[iPTR] }, V128:{ *:[v4i32] }:$low, V128:{ *:[v4i32] }:$high) - Complexity = 8 |
| 27110 | // Dst: (NARROW_S_I16x8:{ *:[v8i16] } V128:{ *:[v4i32] }:$low, V128:{ *:[v4i32] }:$high) |
| 27111 | /* 54940*/ 0, // EndSwitchType |
| 27112 | /* 54941*/ /*Scope*/ 40, /*->54982*/ |
| 27113 | /* 54942*/ OPC_CheckChild0Integer, 49|128,67/*8625*/, |
| 27114 | /* 54945*/ OPC_RecordChild1, // #0 = $low |
| 27115 | /* 54946*/ OPC_SwitchType /*2 cases */, 15, MVT::v16i8,// ->54964 |
| 27116 | /* 54949*/ OPC_CheckChild1Type, MVT::v8i16, |
| 27117 | /* 54951*/ OPC_RecordChild2, // #1 = $high |
| 27118 | /* 54952*/ OPC_CheckChild2Type, MVT::v8i16, |
| 27119 | /* 54954*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27120 | /* 54956*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NARROW_U_I8x16), 0, |
| 27121 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 27122 | // Src: (intrinsic_wo_chain:{ *:[v16i8] } 8625:{ *:[iPTR] }, V128:{ *:[v8i16] }:$low, V128:{ *:[v8i16] }:$high) - Complexity = 8 |
| 27123 | // Dst: (NARROW_U_I8x16:{ *:[v16i8] } V128:{ *:[v8i16] }:$low, V128:{ *:[v8i16] }:$high) |
| 27124 | /* 54964*/ /*SwitchType*/ 15, MVT::v8i16,// ->54981 |
| 27125 | /* 54966*/ OPC_CheckChild1Type, MVT::v4i32, |
| 27126 | /* 54968*/ OPC_RecordChild2, // #1 = $high |
| 27127 | /* 54969*/ OPC_CheckChild2Type, MVT::v4i32, |
| 27128 | /* 54971*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27129 | /* 54973*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NARROW_U_I16x8), 0, |
| 27130 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 27131 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8625:{ *:[iPTR] }, V128:{ *:[v4i32] }:$low, V128:{ *:[v4i32] }:$high) - Complexity = 8 |
| 27132 | // Dst: (NARROW_U_I16x8:{ *:[v8i16] } V128:{ *:[v4i32] }:$low, V128:{ *:[v4i32] }:$high) |
| 27133 | /* 54981*/ 0, // EndSwitchType |
| 27134 | /* 54982*/ /*Scope*/ 32, /*->55015*/ |
| 27135 | /* 54983*/ OPC_CheckChild0Integer, 26|128,67/*8602*/, |
| 27136 | /* 54986*/ OPC_RecordChild1, // #0 = $vec |
| 27137 | /* 54987*/ OPC_SwitchType /*2 cases */, 11, MVT::v8i16,// ->55001 |
| 27138 | /* 54990*/ OPC_CheckChild1Type, MVT::v16i8, |
| 27139 | /* 54992*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27140 | /* 54994*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_extadd_pairwise_signed_I16x8), 0, |
| 27141 | MVT::v8i16, 1/*#Ops*/, 0, |
| 27142 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8602:{ *:[iPTR] }, V128:{ *:[v16i8] }:$vec) - Complexity = 8 |
| 27143 | // Dst: (int_wasm_extadd_pairwise_signed_I16x8:{ *:[v8i16] } V128:{ *:[v16i8] }:$vec) |
| 27144 | /* 55001*/ /*SwitchType*/ 11, MVT::v4i32,// ->55014 |
| 27145 | /* 55003*/ OPC_CheckChild1Type, MVT::v8i16, |
| 27146 | /* 55005*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27147 | /* 55007*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_extadd_pairwise_signed_I32x4), 0, |
| 27148 | MVT::v4i32, 1/*#Ops*/, 0, |
| 27149 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8602:{ *:[iPTR] }, V128:{ *:[v8i16] }:$vec) - Complexity = 8 |
| 27150 | // Dst: (int_wasm_extadd_pairwise_signed_I32x4:{ *:[v4i32] } V128:{ *:[v8i16] }:$vec) |
| 27151 | /* 55014*/ 0, // EndSwitchType |
| 27152 | /* 55015*/ /*Scope*/ 32, /*->55048*/ |
| 27153 | /* 55016*/ OPC_CheckChild0Integer, 27|128,67/*8603*/, |
| 27154 | /* 55019*/ OPC_RecordChild1, // #0 = $vec |
| 27155 | /* 55020*/ OPC_SwitchType /*2 cases */, 11, MVT::v8i16,// ->55034 |
| 27156 | /* 55023*/ OPC_CheckChild1Type, MVT::v16i8, |
| 27157 | /* 55025*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27158 | /* 55027*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_extadd_pairwise_unsigned_I16x8), 0, |
| 27159 | MVT::v8i16, 1/*#Ops*/, 0, |
| 27160 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8603:{ *:[iPTR] }, V128:{ *:[v16i8] }:$vec) - Complexity = 8 |
| 27161 | // Dst: (int_wasm_extadd_pairwise_unsigned_I16x8:{ *:[v8i16] } V128:{ *:[v16i8] }:$vec) |
| 27162 | /* 55034*/ /*SwitchType*/ 11, MVT::v4i32,// ->55047 |
| 27163 | /* 55036*/ OPC_CheckChild1Type, MVT::v8i16, |
| 27164 | /* 55038*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27165 | /* 55040*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_extadd_pairwise_unsigned_I32x4), 0, |
| 27166 | MVT::v4i32, 1/*#Ops*/, 0, |
| 27167 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8603:{ *:[iPTR] }, V128:{ *:[v8i16] }:$vec) - Complexity = 8 |
| 27168 | // Dst: (int_wasm_extadd_pairwise_unsigned_I32x4:{ *:[v4i32] } V128:{ *:[v8i16] }:$vec) |
| 27169 | /* 55047*/ 0, // EndSwitchType |
| 27170 | /* 55048*/ /*Scope*/ 13, /*->55062*/ |
| 27171 | /* 55049*/ OPC_CheckChild0Integer, 77|128,67/*8653*/, |
| 27172 | /* 55052*/ OPC_RecordChild1, // #0 = $vec |
| 27173 | /* 55053*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27174 | /* 55055*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_trunc_saturate_zero_signed_I32x4), 0, |
| 27175 | MVT::v4i32, 1/*#Ops*/, 0, |
| 27176 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8653:{ *:[iPTR] }, V128:{ *:[v2f64] }:$vec) - Complexity = 8 |
| 27177 | // Dst: (int_wasm_trunc_saturate_zero_signed_I32x4:{ *:[v4i32] } V128:{ *:[v2f64] }:$vec) |
| 27178 | /* 55062*/ /*Scope*/ 13, /*->55076*/ |
| 27179 | /* 55063*/ OPC_CheckChild0Integer, 78|128,67/*8654*/, |
| 27180 | /* 55066*/ OPC_RecordChild1, // #0 = $vec |
| 27181 | /* 55067*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27182 | /* 55069*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_trunc_saturate_zero_unsigned_I32x4), 0, |
| 27183 | MVT::v4i32, 1/*#Ops*/, 0, |
| 27184 | // Src: (intrinsic_wo_chain:{ *:[v4i32] } 8654:{ *:[iPTR] }, V128:{ *:[v2f64] }:$vec) - Complexity = 8 |
| 27185 | // Dst: (int_wasm_trunc_saturate_zero_unsigned_I32x4:{ *:[v4i32] } V128:{ *:[v2f64] }:$vec) |
| 27186 | /* 55076*/ /*Scope*/ 15, /*->55092*/ |
| 27187 | /* 55077*/ OPC_CheckChild0Integer, 57|128,67/*8633*/, |
| 27188 | /* 55080*/ OPC_RecordChild1, // #0 = $lhs |
| 27189 | /* 55081*/ OPC_RecordChild2, // #1 = $rhs |
| 27190 | /* 55082*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27191 | /* 55084*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::Q15MULR_SAT_S_I16x8), 0, |
| 27192 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 27193 | // Src: (intrinsic_wo_chain:{ *:[v8i16] } 8633:{ *:[iPTR] }, V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 8 |
| 27194 | // Dst: (Q15MULR_SAT_S_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 27195 | /* 55092*/ /*Scope*/ 32, /*->55125*/ |
| 27196 | /* 55093*/ OPC_CheckChild0Integer, 20|128,67/*8596*/, |
| 27197 | /* 55096*/ OPC_RecordChild1, // #0 = $v |
| 27198 | /* 55097*/ OPC_SwitchType /*2 cases */, 11, MVT::v4f32,// ->55111 |
| 27199 | /* 55100*/ OPC_CheckChild1Type, MVT::v4f32, |
| 27200 | /* 55102*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27201 | /* 55104*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CEIL_F32x4), 0, |
| 27202 | MVT::v4f32, 1/*#Ops*/, 0, |
| 27203 | // Src: (intrinsic_wo_chain:{ *:[v4f32] } 8596:{ *:[iPTR] }, V128:{ *:[v4f32] }:$v) - Complexity = 8 |
| 27204 | // Dst: (CEIL_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$v) |
| 27205 | /* 55111*/ /*SwitchType*/ 11, MVT::v2f64,// ->55124 |
| 27206 | /* 55113*/ OPC_CheckChild1Type, MVT::v2f64, |
| 27207 | /* 55115*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27208 | /* 55117*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CEIL_F64x2), 0, |
| 27209 | MVT::v2f64, 1/*#Ops*/, 0, |
| 27210 | // Src: (intrinsic_wo_chain:{ *:[v2f64] } 8596:{ *:[iPTR] }, V128:{ *:[v2f64] }:$v) - Complexity = 8 |
| 27211 | // Dst: (CEIL_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$v) |
| 27212 | /* 55124*/ 0, // EndSwitchType |
| 27213 | /* 55125*/ /*Scope*/ 32, /*->55158*/ |
| 27214 | /* 55126*/ OPC_CheckChild0Integer, 32|128,67/*8608*/, |
| 27215 | /* 55129*/ OPC_RecordChild1, // #0 = $v |
| 27216 | /* 55130*/ OPC_SwitchType /*2 cases */, 11, MVT::v4f32,// ->55144 |
| 27217 | /* 55133*/ OPC_CheckChild1Type, MVT::v4f32, |
| 27218 | /* 55135*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27219 | /* 55137*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::FLOOR_F32x4), 0, |
| 27220 | MVT::v4f32, 1/*#Ops*/, 0, |
| 27221 | // Src: (intrinsic_wo_chain:{ *:[v4f32] } 8608:{ *:[iPTR] }, V128:{ *:[v4f32] }:$v) - Complexity = 8 |
| 27222 | // Dst: (FLOOR_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$v) |
| 27223 | /* 55144*/ /*SwitchType*/ 11, MVT::v2f64,// ->55157 |
| 27224 | /* 55146*/ OPC_CheckChild1Type, MVT::v2f64, |
| 27225 | /* 55148*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27226 | /* 55150*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::FLOOR_F64x2), 0, |
| 27227 | MVT::v2f64, 1/*#Ops*/, 0, |
| 27228 | // Src: (intrinsic_wo_chain:{ *:[v2f64] } 8608:{ *:[iPTR] }, V128:{ *:[v2f64] }:$v) - Complexity = 8 |
| 27229 | // Dst: (FLOOR_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$v) |
| 27230 | /* 55157*/ 0, // EndSwitchType |
| 27231 | /* 55158*/ /*Scope*/ 32, /*->55191*/ |
| 27232 | /* 55159*/ OPC_CheckChild0Integer, 74|128,67/*8650*/, |
| 27233 | /* 55162*/ OPC_RecordChild1, // #0 = $v |
| 27234 | /* 55163*/ OPC_SwitchType /*2 cases */, 11, MVT::v4f32,// ->55177 |
| 27235 | /* 55166*/ OPC_CheckChild1Type, MVT::v4f32, |
| 27236 | /* 55168*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27237 | /* 55170*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::TRUNC_F32x4), 0, |
| 27238 | MVT::v4f32, 1/*#Ops*/, 0, |
| 27239 | // Src: (intrinsic_wo_chain:{ *:[v4f32] } 8650:{ *:[iPTR] }, V128:{ *:[v4f32] }:$v) - Complexity = 8 |
| 27240 | // Dst: (TRUNC_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$v) |
| 27241 | /* 55177*/ /*SwitchType*/ 11, MVT::v2f64,// ->55190 |
| 27242 | /* 55179*/ OPC_CheckChild1Type, MVT::v2f64, |
| 27243 | /* 55181*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27244 | /* 55183*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::TRUNC_F64x2), 0, |
| 27245 | MVT::v2f64, 1/*#Ops*/, 0, |
| 27246 | // Src: (intrinsic_wo_chain:{ *:[v2f64] } 8650:{ *:[iPTR] }, V128:{ *:[v2f64] }:$v) - Complexity = 8 |
| 27247 | // Dst: (TRUNC_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$v) |
| 27248 | /* 55190*/ 0, // EndSwitchType |
| 27249 | /* 55191*/ /*Scope*/ 32, /*->55224*/ |
| 27250 | /* 55192*/ OPC_CheckChild0Integer, 50|128,67/*8626*/, |
| 27251 | /* 55195*/ OPC_RecordChild1, // #0 = $v |
| 27252 | /* 55196*/ OPC_SwitchType /*2 cases */, 11, MVT::v4f32,// ->55210 |
| 27253 | /* 55199*/ OPC_CheckChild1Type, MVT::v4f32, |
| 27254 | /* 55201*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27255 | /* 55203*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEAREST_F32x4), 0, |
| 27256 | MVT::v4f32, 1/*#Ops*/, 0, |
| 27257 | // Src: (intrinsic_wo_chain:{ *:[v4f32] } 8626:{ *:[iPTR] }, V128:{ *:[v4f32] }:$v) - Complexity = 8 |
| 27258 | // Dst: (NEAREST_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$v) |
| 27259 | /* 55210*/ /*SwitchType*/ 11, MVT::v2f64,// ->55223 |
| 27260 | /* 55212*/ OPC_CheckChild1Type, MVT::v2f64, |
| 27261 | /* 55214*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27262 | /* 55216*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEAREST_F64x2), 0, |
| 27263 | MVT::v2f64, 1/*#Ops*/, 0, |
| 27264 | // Src: (intrinsic_wo_chain:{ *:[v2f64] } 8626:{ *:[iPTR] }, V128:{ *:[v2f64] }:$v) - Complexity = 8 |
| 27265 | // Dst: (NEAREST_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$v) |
| 27266 | /* 55223*/ 0, // EndSwitchType |
| 27267 | /* 55224*/ /*Scope*/ 40, /*->55265*/ |
| 27268 | /* 55225*/ OPC_CheckChild0Integer, 52|128,67/*8628*/, |
| 27269 | /* 55228*/ OPC_RecordChild1, // #0 = $lhs |
| 27270 | /* 55229*/ OPC_SwitchType /*2 cases */, 15, MVT::v4f32,// ->55247 |
| 27271 | /* 55232*/ OPC_CheckChild1Type, MVT::v4f32, |
| 27272 | /* 55234*/ OPC_RecordChild2, // #1 = $rhs |
| 27273 | /* 55235*/ OPC_CheckChild2Type, MVT::v4f32, |
| 27274 | /* 55237*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27275 | /* 55239*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::PMIN_F32x4), 0, |
| 27276 | MVT::v4f32, 2/*#Ops*/, 0, 1, |
| 27277 | // Src: (intrinsic_wo_chain:{ *:[v4f32] } 8628:{ *:[iPTR] }, V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) - Complexity = 8 |
| 27278 | // Dst: (PMIN_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 27279 | /* 55247*/ /*SwitchType*/ 15, MVT::v2f64,// ->55264 |
| 27280 | /* 55249*/ OPC_CheckChild1Type, MVT::v2f64, |
| 27281 | /* 55251*/ OPC_RecordChild2, // #1 = $rhs |
| 27282 | /* 55252*/ OPC_CheckChild2Type, MVT::v2f64, |
| 27283 | /* 55254*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27284 | /* 55256*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::PMIN_F64x2), 0, |
| 27285 | MVT::v2f64, 2/*#Ops*/, 0, 1, |
| 27286 | // Src: (intrinsic_wo_chain:{ *:[v2f64] } 8628:{ *:[iPTR] }, V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) - Complexity = 8 |
| 27287 | // Dst: (PMIN_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 27288 | /* 55264*/ 0, // EndSwitchType |
| 27289 | /* 55265*/ /*Scope*/ 40, /*->55306*/ |
| 27290 | /* 55266*/ OPC_CheckChild0Integer, 51|128,67/*8627*/, |
| 27291 | /* 55269*/ OPC_RecordChild1, // #0 = $lhs |
| 27292 | /* 55270*/ OPC_SwitchType /*2 cases */, 15, MVT::v4f32,// ->55288 |
| 27293 | /* 55273*/ OPC_CheckChild1Type, MVT::v4f32, |
| 27294 | /* 55275*/ OPC_RecordChild2, // #1 = $rhs |
| 27295 | /* 55276*/ OPC_CheckChild2Type, MVT::v4f32, |
| 27296 | /* 55278*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27297 | /* 55280*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::PMAX_F32x4), 0, |
| 27298 | MVT::v4f32, 2/*#Ops*/, 0, 1, |
| 27299 | // Src: (intrinsic_wo_chain:{ *:[v4f32] } 8627:{ *:[iPTR] }, V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) - Complexity = 8 |
| 27300 | // Dst: (PMAX_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 27301 | /* 55288*/ /*SwitchType*/ 15, MVT::v2f64,// ->55305 |
| 27302 | /* 55290*/ OPC_CheckChild1Type, MVT::v2f64, |
| 27303 | /* 55292*/ OPC_RecordChild2, // #1 = $rhs |
| 27304 | /* 55293*/ OPC_CheckChild2Type, MVT::v2f64, |
| 27305 | /* 55295*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27306 | /* 55297*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::PMAX_F64x2), 0, |
| 27307 | MVT::v2f64, 2/*#Ops*/, 0, 1, |
| 27308 | // Src: (intrinsic_wo_chain:{ *:[v2f64] } 8627:{ *:[iPTR] }, V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) - Complexity = 8 |
| 27309 | // Dst: (PMAX_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 27310 | /* 55305*/ 0, // EndSwitchType |
| 27311 | /* 55306*/ /*Scope*/ 13, /*->55320*/ |
| 27312 | /* 55307*/ OPC_CheckChild0Integer, 21|128,67/*8597*/, |
| 27313 | /* 55310*/ OPC_RecordChild1, // #0 = $vec |
| 27314 | /* 55311*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27315 | /* 55313*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_convert_low_signed_F64x2), 0, |
| 27316 | MVT::v2f64, 1/*#Ops*/, 0, |
| 27317 | // Src: (intrinsic_wo_chain:{ *:[v2f64] } 8597:{ *:[iPTR] }, V128:{ *:[v4i32] }:$vec) - Complexity = 8 |
| 27318 | // Dst: (int_wasm_convert_low_signed_F64x2:{ *:[v2f64] } V128:{ *:[v4i32] }:$vec) |
| 27319 | /* 55320*/ /*Scope*/ 13, /*->55334*/ |
| 27320 | /* 55321*/ OPC_CheckChild0Integer, 22|128,67/*8598*/, |
| 27321 | /* 55324*/ OPC_RecordChild1, // #0 = $vec |
| 27322 | /* 55325*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27323 | /* 55327*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_convert_low_unsigned_F64x2), 0, |
| 27324 | MVT::v2f64, 1/*#Ops*/, 0, |
| 27325 | // Src: (intrinsic_wo_chain:{ *:[v2f64] } 8598:{ *:[iPTR] }, V128:{ *:[v4i32] }:$vec) - Complexity = 8 |
| 27326 | // Dst: (int_wasm_convert_low_unsigned_F64x2:{ *:[v2f64] } V128:{ *:[v4i32] }:$vec) |
| 27327 | /* 55334*/ /*Scope*/ 13, /*->55348*/ |
| 27328 | /* 55335*/ OPC_CheckChild0Integer, 23|128,67/*8599*/, |
| 27329 | /* 55338*/ OPC_RecordChild1, // #0 = $vec |
| 27330 | /* 55339*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27331 | /* 55341*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_demote_zero_F32x4), 0, |
| 27332 | MVT::v4f32, 1/*#Ops*/, 0, |
| 27333 | // Src: (intrinsic_wo_chain:{ *:[v4f32] } 8599:{ *:[iPTR] }, V128:{ *:[v2f64] }:$vec) - Complexity = 8 |
| 27334 | // Dst: (int_wasm_demote_zero_F32x4:{ *:[v4f32] } V128:{ *:[v2f64] }:$vec) |
| 27335 | /* 55348*/ /*Scope*/ 13, /*->55362*/ |
| 27336 | /* 55349*/ OPC_CheckChild0Integer, 56|128,67/*8632*/, |
| 27337 | /* 55352*/ OPC_RecordChild1, // #0 = $vec |
| 27338 | /* 55353*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27339 | /* 55355*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::int_wasm_promote_low_F64x2), 0, |
| 27340 | MVT::v2f64, 1/*#Ops*/, 0, |
| 27341 | // Src: (intrinsic_wo_chain:{ *:[v2f64] } 8632:{ *:[iPTR] }, V128:{ *:[v4f32] }:$vec) - Complexity = 8 |
| 27342 | // Dst: (int_wasm_promote_low_F64x2:{ *:[v2f64] } V128:{ *:[v4f32] }:$vec) |
| 27343 | /* 55362*/ /*Scope*/ 48, /*->55411*/ |
| 27344 | /* 55363*/ OPC_CheckChild0Integer, 58|128,67/*8634*/, |
| 27345 | /* 55366*/ OPC_RecordChild1, // #0 = $a |
| 27346 | /* 55367*/ OPC_SwitchType /*2 cases */, 19, MVT::v4f32,// ->55389 |
| 27347 | /* 55370*/ OPC_CheckChild1Type, MVT::v4f32, |
| 27348 | /* 55372*/ OPC_RecordChild2, // #1 = $b |
| 27349 | /* 55373*/ OPC_CheckChild2Type, MVT::v4f32, |
| 27350 | /* 55375*/ OPC_RecordChild3, // #2 = $c |
| 27351 | /* 55376*/ OPC_CheckChild3Type, MVT::v4f32, |
| 27352 | /* 55378*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27353 | /* 55380*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::QFMA_F32x4), 0, |
| 27354 | MVT::v4f32, 3/*#Ops*/, 0, 1, 2, |
| 27355 | // Src: (intrinsic_wo_chain:{ *:[v4f32] } 8634:{ *:[iPTR] }, V128:{ *:[v4f32] }:$a, V128:{ *:[v4f32] }:$b, V128:{ *:[v4f32] }:$c) - Complexity = 8 |
| 27356 | // Dst: (QFMA_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$a, V128:{ *:[v4f32] }:$b, V128:{ *:[v4f32] }:$c) |
| 27357 | /* 55389*/ /*SwitchType*/ 19, MVT::v2f64,// ->55410 |
| 27358 | /* 55391*/ OPC_CheckChild1Type, MVT::v2f64, |
| 27359 | /* 55393*/ OPC_RecordChild2, // #1 = $b |
| 27360 | /* 55394*/ OPC_CheckChild2Type, MVT::v2f64, |
| 27361 | /* 55396*/ OPC_RecordChild3, // #2 = $c |
| 27362 | /* 55397*/ OPC_CheckChild3Type, MVT::v2f64, |
| 27363 | /* 55399*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27364 | /* 55401*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::QFMA_F64x2), 0, |
| 27365 | MVT::v2f64, 3/*#Ops*/, 0, 1, 2, |
| 27366 | // Src: (intrinsic_wo_chain:{ *:[v2f64] } 8634:{ *:[iPTR] }, V128:{ *:[v2f64] }:$a, V128:{ *:[v2f64] }:$b, V128:{ *:[v2f64] }:$c) - Complexity = 8 |
| 27367 | // Dst: (QFMA_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$a, V128:{ *:[v2f64] }:$b, V128:{ *:[v2f64] }:$c) |
| 27368 | /* 55410*/ 0, // EndSwitchType |
| 27369 | /* 55411*/ /*Scope*/ 48, /*->55460*/ |
| 27370 | /* 55412*/ OPC_CheckChild0Integer, 59|128,67/*8635*/, |
| 27371 | /* 55415*/ OPC_RecordChild1, // #0 = $a |
| 27372 | /* 55416*/ OPC_SwitchType /*2 cases */, 19, MVT::v4f32,// ->55438 |
| 27373 | /* 55419*/ OPC_CheckChild1Type, MVT::v4f32, |
| 27374 | /* 55421*/ OPC_RecordChild2, // #1 = $b |
| 27375 | /* 55422*/ OPC_CheckChild2Type, MVT::v4f32, |
| 27376 | /* 55424*/ OPC_RecordChild3, // #2 = $c |
| 27377 | /* 55425*/ OPC_CheckChild3Type, MVT::v4f32, |
| 27378 | /* 55427*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27379 | /* 55429*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::QFMS_F32x4), 0, |
| 27380 | MVT::v4f32, 3/*#Ops*/, 0, 1, 2, |
| 27381 | // Src: (intrinsic_wo_chain:{ *:[v4f32] } 8635:{ *:[iPTR] }, V128:{ *:[v4f32] }:$a, V128:{ *:[v4f32] }:$b, V128:{ *:[v4f32] }:$c) - Complexity = 8 |
| 27382 | // Dst: (QFMS_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$a, V128:{ *:[v4f32] }:$b, V128:{ *:[v4f32] }:$c) |
| 27383 | /* 55438*/ /*SwitchType*/ 19, MVT::v2f64,// ->55459 |
| 27384 | /* 55440*/ OPC_CheckChild1Type, MVT::v2f64, |
| 27385 | /* 55442*/ OPC_RecordChild2, // #1 = $b |
| 27386 | /* 55443*/ OPC_CheckChild2Type, MVT::v2f64, |
| 27387 | /* 55445*/ OPC_RecordChild3, // #2 = $c |
| 27388 | /* 55446*/ OPC_CheckChild3Type, MVT::v2f64, |
| 27389 | /* 55448*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27390 | /* 55450*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::QFMS_F64x2), 0, |
| 27391 | MVT::v2f64, 3/*#Ops*/, 0, 1, 2, |
| 27392 | // Src: (intrinsic_wo_chain:{ *:[v2f64] } 8635:{ *:[iPTR] }, V128:{ *:[v2f64] }:$a, V128:{ *:[v2f64] }:$b, V128:{ *:[v2f64] }:$c) - Complexity = 8 |
| 27393 | // Dst: (QFMS_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$a, V128:{ *:[v2f64] }:$b, V128:{ *:[v2f64] }:$c) |
| 27394 | /* 55459*/ 0, // EndSwitchType |
| 27395 | /* 55460*/ 0, /*End of Scope*/ |
| 27396 | /* 55461*/ /*SwitchOpcode*/ 25|128,1/*153*/, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),// ->55618 |
| 27397 | /* 55465*/ OPC_RecordChild0, // #0 = $vec |
| 27398 | /* 55466*/ OPC_Scope, 24, /*->55492*/ // 6 children in Scope |
| 27399 | /* 55468*/ OPC_CheckChild0Type, MVT::v16i8, |
| 27400 | /* 55470*/ OPC_RecordChild1, // #1 = $idx |
| 27401 | /* 55471*/ OPC_MoveChild1, |
| 27402 | /* 55472*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 27403 | /* 55475*/ OPC_CheckPredicate, 4, // Predicate_LaneIdx16 |
| 27404 | /* 55477*/ OPC_CheckType, MVT::i32, |
| 27405 | /* 55479*/ OPC_MoveParent, |
| 27406 | /* 55480*/ OPC_CheckType, MVT::i32, |
| 27407 | /* 55482*/ OPC_EmitConvertToTarget, 1, |
| 27408 | /* 55484*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I8x16_u), 0, |
| 27409 | MVT::i32, 2/*#Ops*/, 0, 2, |
| 27410 | // Src: (vector_extract:{ *:[i32] } V128:{ *:[v16i8] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx16>>:$idx) - Complexity = 7 |
| 27411 | // Dst: (EXTRACT_LANE_I8x16_u:{ *:[i32] } ?:{ *:[v16i8] }:$vec, (imm:{ *:[i32] }):$idx) |
| 27412 | /* 55492*/ /*Scope*/ 24, /*->55517*/ |
| 27413 | /* 55493*/ OPC_CheckChild0Type, MVT::v8i16, |
| 27414 | /* 55495*/ OPC_RecordChild1, // #1 = $idx |
| 27415 | /* 55496*/ OPC_MoveChild1, |
| 27416 | /* 55497*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 27417 | /* 55500*/ OPC_CheckPredicate, 5, // Predicate_LaneIdx8 |
| 27418 | /* 55502*/ OPC_CheckType, MVT::i32, |
| 27419 | /* 55504*/ OPC_MoveParent, |
| 27420 | /* 55505*/ OPC_CheckType, MVT::i32, |
| 27421 | /* 55507*/ OPC_EmitConvertToTarget, 1, |
| 27422 | /* 55509*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I16x8_u), 0, |
| 27423 | MVT::i32, 2/*#Ops*/, 0, 2, |
| 27424 | // Src: (vector_extract:{ *:[i32] } V128:{ *:[v8i16] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx8>>:$idx) - Complexity = 7 |
| 27425 | // Dst: (EXTRACT_LANE_I16x8_u:{ *:[i32] } ?:{ *:[v8i16] }:$vec, (imm:{ *:[i32] }):$idx) |
| 27426 | /* 55517*/ /*Scope*/ 24, /*->55542*/ |
| 27427 | /* 55518*/ OPC_CheckChild0Type, MVT::v4i32, |
| 27428 | /* 55520*/ OPC_RecordChild1, // #1 = $idx |
| 27429 | /* 55521*/ OPC_MoveChild1, |
| 27430 | /* 55522*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 27431 | /* 55525*/ OPC_CheckPredicate, 7, // Predicate_LaneIdx4 |
| 27432 | /* 55527*/ OPC_CheckType, MVT::i32, |
| 27433 | /* 55529*/ OPC_MoveParent, |
| 27434 | /* 55530*/ OPC_CheckType, MVT::i32, |
| 27435 | /* 55532*/ OPC_EmitConvertToTarget, 1, |
| 27436 | /* 55534*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I32x4), 0, |
| 27437 | MVT::i32, 2/*#Ops*/, 0, 2, |
| 27438 | // Src: (vector_extract:{ *:[i32] } V128:{ *:[v4i32] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx4>>:$idx) - Complexity = 7 |
| 27439 | // Dst: (EXTRACT_LANE_I32x4:{ *:[i32] } ?:{ *:[v4i32] }:$vec, (imm:{ *:[i32] }):$idx) |
| 27440 | /* 55542*/ /*Scope*/ 24, /*->55567*/ |
| 27441 | /* 55543*/ OPC_CheckChild0Type, MVT::v2i64, |
| 27442 | /* 55545*/ OPC_RecordChild1, // #1 = $idx |
| 27443 | /* 55546*/ OPC_MoveChild1, |
| 27444 | /* 55547*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 27445 | /* 55550*/ OPC_CheckPredicate, 8, // Predicate_LaneIdx2 |
| 27446 | /* 55552*/ OPC_CheckType, MVT::i32, |
| 27447 | /* 55554*/ OPC_MoveParent, |
| 27448 | /* 55555*/ OPC_CheckType, MVT::i64, |
| 27449 | /* 55557*/ OPC_EmitConvertToTarget, 1, |
| 27450 | /* 55559*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2), 0, |
| 27451 | MVT::i64, 2/*#Ops*/, 0, 2, |
| 27452 | // Src: (vector_extract:{ *:[i64] } V128:{ *:[v2i64] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx2>>:$idx) - Complexity = 7 |
| 27453 | // Dst: (EXTRACT_LANE_I64x2:{ *:[i64] } ?:{ *:[v2i64] }:$vec, (imm:{ *:[i32] }):$idx) |
| 27454 | /* 55567*/ /*Scope*/ 24, /*->55592*/ |
| 27455 | /* 55568*/ OPC_CheckChild0Type, MVT::v4f32, |
| 27456 | /* 55570*/ OPC_RecordChild1, // #1 = $idx |
| 27457 | /* 55571*/ OPC_MoveChild1, |
| 27458 | /* 55572*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 27459 | /* 55575*/ OPC_CheckPredicate, 7, // Predicate_LaneIdx4 |
| 27460 | /* 55577*/ OPC_CheckType, MVT::i32, |
| 27461 | /* 55579*/ OPC_MoveParent, |
| 27462 | /* 55580*/ OPC_CheckType, MVT::f32, |
| 27463 | /* 55582*/ OPC_EmitConvertToTarget, 1, |
| 27464 | /* 55584*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTRACT_LANE_F32x4), 0, |
| 27465 | MVT::f32, 2/*#Ops*/, 0, 2, |
| 27466 | // Src: (vector_extract:{ *:[f32] } V128:{ *:[v4f32] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx4>>:$idx) - Complexity = 7 |
| 27467 | // Dst: (EXTRACT_LANE_F32x4:{ *:[f32] } ?:{ *:[v4f32] }:$vec, (imm:{ *:[i32] }):$idx) |
| 27468 | /* 55592*/ /*Scope*/ 24, /*->55617*/ |
| 27469 | /* 55593*/ OPC_CheckChild0Type, MVT::v2f64, |
| 27470 | /* 55595*/ OPC_RecordChild1, // #1 = $idx |
| 27471 | /* 55596*/ OPC_MoveChild1, |
| 27472 | /* 55597*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 27473 | /* 55600*/ OPC_CheckPredicate, 8, // Predicate_LaneIdx2 |
| 27474 | /* 55602*/ OPC_CheckType, MVT::i32, |
| 27475 | /* 55604*/ OPC_MoveParent, |
| 27476 | /* 55605*/ OPC_CheckType, MVT::f64, |
| 27477 | /* 55607*/ OPC_EmitConvertToTarget, 1, |
| 27478 | /* 55609*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::EXTRACT_LANE_F64x2), 0, |
| 27479 | MVT::f64, 2/*#Ops*/, 0, 2, |
| 27480 | // Src: (vector_extract:{ *:[f64] } V128:{ *:[v2f64] }:$vec, (imm:{ *:[i32] })<<P:Predicate_LaneIdx2>>:$idx) - Complexity = 7 |
| 27481 | // Dst: (EXTRACT_LANE_F64x2:{ *:[f64] } ?:{ *:[v2f64] }:$vec, (imm:{ *:[i32] }):$idx) |
| 27482 | /* 55617*/ 0, /*End of Scope*/ |
| 27483 | /* 55618*/ /*SwitchOpcode*/ 116, TARGET_VAL(WebAssemblyISD::ARGUMENT),// ->55737 |
| 27484 | /* 55621*/ OPC_RecordChild0, // #0 = $argno |
| 27485 | /* 55622*/ OPC_MoveChild0, |
| 27486 | /* 55623*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| 27487 | /* 55626*/ OPC_MoveParent, |
| 27488 | /* 55627*/ OPC_SwitchType /*12 cases */, 7, MVT::i32,// ->55637 |
| 27489 | /* 55630*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ARGUMENT_i32), 0, |
| 27490 | MVT::i32, 1/*#Ops*/, 0, |
| 27491 | // Src: (WebAssemblyargument:{ *:[i32] } (timm:{ *:[i32] }):$argno) - Complexity = 6 |
| 27492 | // Dst: (ARGUMENT_i32:{ *:[i32] } (timm:{ *:[i32] }):$argno) |
| 27493 | /* 55637*/ /*SwitchType*/ 7, MVT::i64,// ->55646 |
| 27494 | /* 55639*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ARGUMENT_i64), 0, |
| 27495 | MVT::i64, 1/*#Ops*/, 0, |
| 27496 | // Src: (WebAssemblyargument:{ *:[i64] } (timm:{ *:[i32] }):$argno) - Complexity = 6 |
| 27497 | // Dst: (ARGUMENT_i64:{ *:[i64] } (timm:{ *:[i32] }):$argno) |
| 27498 | /* 55646*/ /*SwitchType*/ 7, MVT::funcref,// ->55655 |
| 27499 | /* 55648*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ARGUMENT_funcref), 0, |
| 27500 | MVT::funcref, 1/*#Ops*/, 0, |
| 27501 | // Src: (WebAssemblyargument:{ *:[funcref] } (timm:{ *:[i32] }):$argno) - Complexity = 6 |
| 27502 | // Dst: (ARGUMENT_funcref:{ *:[funcref] } (timm:{ *:[i32] }):$argno) |
| 27503 | /* 55655*/ /*SwitchType*/ 7, MVT::externref,// ->55664 |
| 27504 | /* 55657*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ARGUMENT_externref), 0, |
| 27505 | MVT::externref, 1/*#Ops*/, 0, |
| 27506 | // Src: (WebAssemblyargument:{ *:[externref] } (timm:{ *:[i32] }):$argno) - Complexity = 6 |
| 27507 | // Dst: (ARGUMENT_externref:{ *:[externref] } (timm:{ *:[i32] }):$argno) |
| 27508 | /* 55664*/ /*SwitchType*/ 7, MVT::f32,// ->55673 |
| 27509 | /* 55666*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ARGUMENT_f32), 0, |
| 27510 | MVT::f32, 1/*#Ops*/, 0, |
| 27511 | // Src: (WebAssemblyargument:{ *:[f32] } (timm:{ *:[i32] }):$argno) - Complexity = 6 |
| 27512 | // Dst: (ARGUMENT_f32:{ *:[f32] } (timm:{ *:[i32] }):$argno) |
| 27513 | /* 55673*/ /*SwitchType*/ 7, MVT::f64,// ->55682 |
| 27514 | /* 55675*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ARGUMENT_f64), 0, |
| 27515 | MVT::f64, 1/*#Ops*/, 0, |
| 27516 | // Src: (WebAssemblyargument:{ *:[f64] } (timm:{ *:[i32] }):$argno) - Complexity = 6 |
| 27517 | // Dst: (ARGUMENT_f64:{ *:[f64] } (timm:{ *:[i32] }):$argno) |
| 27518 | /* 55682*/ /*SwitchType*/ 7, MVT::v16i8,// ->55691 |
| 27519 | /* 55684*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ARGUMENT_v16i8), 0, |
| 27520 | MVT::v16i8, 1/*#Ops*/, 0, |
| 27521 | // Src: (WebAssemblyargument:{ *:[v16i8] } (timm:{ *:[i32] }):$argno) - Complexity = 6 |
| 27522 | // Dst: (ARGUMENT_v16i8:{ *:[v16i8] } (timm:{ *:[i32] }):$argno) |
| 27523 | /* 55691*/ /*SwitchType*/ 7, MVT::v8i16,// ->55700 |
| 27524 | /* 55693*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ARGUMENT_v8i16), 0, |
| 27525 | MVT::v8i16, 1/*#Ops*/, 0, |
| 27526 | // Src: (WebAssemblyargument:{ *:[v8i16] } (timm:{ *:[i32] }):$argno) - Complexity = 6 |
| 27527 | // Dst: (ARGUMENT_v8i16:{ *:[v8i16] } (timm:{ *:[i32] }):$argno) |
| 27528 | /* 55700*/ /*SwitchType*/ 7, MVT::v4i32,// ->55709 |
| 27529 | /* 55702*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ARGUMENT_v4i32), 0, |
| 27530 | MVT::v4i32, 1/*#Ops*/, 0, |
| 27531 | // Src: (WebAssemblyargument:{ *:[v4i32] } (timm:{ *:[i32] }):$argno) - Complexity = 6 |
| 27532 | // Dst: (ARGUMENT_v4i32:{ *:[v4i32] } (timm:{ *:[i32] }):$argno) |
| 27533 | /* 55709*/ /*SwitchType*/ 7, MVT::v2i64,// ->55718 |
| 27534 | /* 55711*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ARGUMENT_v2i64), 0, |
| 27535 | MVT::v2i64, 1/*#Ops*/, 0, |
| 27536 | // Src: (WebAssemblyargument:{ *:[v2i64] } (timm:{ *:[i32] }):$argno) - Complexity = 6 |
| 27537 | // Dst: (ARGUMENT_v2i64:{ *:[v2i64] } (timm:{ *:[i32] }):$argno) |
| 27538 | /* 55718*/ /*SwitchType*/ 7, MVT::v4f32,// ->55727 |
| 27539 | /* 55720*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ARGUMENT_v4f32), 0, |
| 27540 | MVT::v4f32, 1/*#Ops*/, 0, |
| 27541 | // Src: (WebAssemblyargument:{ *:[v4f32] } (timm:{ *:[i32] }):$argno) - Complexity = 6 |
| 27542 | // Dst: (ARGUMENT_v4f32:{ *:[v4f32] } (timm:{ *:[i32] }):$argno) |
| 27543 | /* 55727*/ /*SwitchType*/ 7, MVT::v2f64,// ->55736 |
| 27544 | /* 55729*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ARGUMENT_v2f64), 0, |
| 27545 | MVT::v2f64, 1/*#Ops*/, 0, |
| 27546 | // Src: (WebAssemblyargument:{ *:[v2f64] } (timm:{ *:[i32] }):$argno) - Complexity = 6 |
| 27547 | // Dst: (ARGUMENT_v2f64:{ *:[v2f64] } (timm:{ *:[i32] }):$argno) |
| 27548 | /* 55736*/ 0, // EndSwitchType |
| 27549 | /* 55737*/ /*SwitchOpcode*/ 10|128,1/*138*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->55879 |
| 27550 | /* 55741*/ OPC_RecordChild0, // #0 = $addr |
| 27551 | /* 55742*/ OPC_MoveChild0, |
| 27552 | /* 55743*/ OPC_SwitchOpcode /*4 cases */, 38, TARGET_VAL(ISD::TargetGlobalAddress),// ->55785 |
| 27553 | /* 55747*/ OPC_MoveParent, |
| 27554 | /* 55748*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->55773 |
| 27555 | /* 55751*/ OPC_Scope, 9, /*->55762*/ // 2 children in Scope |
| 27556 | /* 55753*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 27557 | /* 55755*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 27558 | MVT::i32, 1/*#Ops*/, 0, |
| 27559 | // Src: (WebAssemblywrapper:{ *:[i32] } (tglobaladdr:{ *:[i32] }):$addr) - Complexity = 6 |
| 27560 | // Dst: (CONST_I32:{ *:[i32] } (tglobaladdr:{ *:[i32] }):$addr) |
| 27561 | /* 55762*/ /*Scope*/ 9, /*->55772*/ |
| 27562 | /* 55763*/ OPC_CheckPatternPredicate, 13, // (!Subtarget->hasAddr64()) && (TM.isPositionIndependent()) |
| 27563 | /* 55765*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_I32), 0, |
| 27564 | MVT::i32, 1/*#Ops*/, 0, |
| 27565 | // Src: (WebAssemblywrapper:{ *:[i32] } (tglobaladdr:{ *:[i32] }):$addr) - Complexity = 6 |
| 27566 | // Dst: (GLOBAL_GET_I32:{ *:[i32] } (tglobaladdr:{ *:[i32] }):$addr) |
| 27567 | /* 55772*/ 0, /*End of Scope*/ |
| 27568 | /* 55773*/ /*SwitchType*/ 9, MVT::i64,// ->55784 |
| 27569 | /* 55775*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 27570 | /* 55777*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 27571 | MVT::i64, 1/*#Ops*/, 0, |
| 27572 | // Src: (WebAssemblywrapper:{ *:[i64] } (tglobaladdr:{ *:[i64] }):$addr) - Complexity = 6 |
| 27573 | // Dst: (CONST_I64:{ *:[i64] } (tglobaladdr:{ *:[i64] }):$addr) |
| 27574 | /* 55784*/ 0, // EndSwitchType |
| 27575 | /* 55785*/ /*SwitchOpcode*/ 25, TARGET_VAL(ISD::TargetGlobalTLSAddress),// ->55813 |
| 27576 | /* 55788*/ OPC_MoveParent, |
| 27577 | /* 55789*/ OPC_SwitchType /*2 cases */, 9, MVT::i32,// ->55801 |
| 27578 | /* 55792*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 27579 | /* 55794*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 27580 | MVT::i32, 1/*#Ops*/, 0, |
| 27581 | // Src: (WebAssemblywrapper:{ *:[i32] } (tglobaltlsaddr:{ *:[i32] }):$addr) - Complexity = 6 |
| 27582 | // Dst: (CONST_I32:{ *:[i32] } (tglobaltlsaddr:{ *:[i32] }):$addr) |
| 27583 | /* 55801*/ /*SwitchType*/ 9, MVT::i64,// ->55812 |
| 27584 | /* 55803*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 27585 | /* 55805*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 27586 | MVT::i64, 1/*#Ops*/, 0, |
| 27587 | // Src: (WebAssemblywrapper:{ *:[i64] } (tglobaltlsaddr:{ *:[i64] }):$addr) - Complexity = 6 |
| 27588 | // Dst: (CONST_I64:{ *:[i64] } (tglobaltlsaddr:{ *:[i64] }):$addr) |
| 27589 | /* 55812*/ 0, // EndSwitchType |
| 27590 | /* 55813*/ /*SwitchOpcode*/ 38, TARGET_VAL(ISD::TargetExternalSymbol),// ->55854 |
| 27591 | /* 55816*/ OPC_MoveParent, |
| 27592 | /* 55817*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->55842 |
| 27593 | /* 55820*/ OPC_Scope, 9, /*->55831*/ // 2 children in Scope |
| 27594 | /* 55822*/ OPC_CheckPatternPredicate, 13, // (!Subtarget->hasAddr64()) && (TM.isPositionIndependent()) |
| 27595 | /* 55824*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_I32), 0, |
| 27596 | MVT::i32, 1/*#Ops*/, 0, |
| 27597 | // Src: (WebAssemblywrapper:{ *:[i32] } (texternalsym:{ *:[i32] }):$addr) - Complexity = 6 |
| 27598 | // Dst: (GLOBAL_GET_I32:{ *:[i32] } (texternalsym:{ *:[i32] }):$addr) |
| 27599 | /* 55831*/ /*Scope*/ 9, /*->55841*/ |
| 27600 | /* 55832*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 27601 | /* 55834*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 27602 | MVT::i32, 1/*#Ops*/, 0, |
| 27603 | // Src: (WebAssemblywrapper:{ *:[i32] } (texternalsym:{ *:[i32] }):$addr) - Complexity = 6 |
| 27604 | // Dst: (CONST_I32:{ *:[i32] } (texternalsym:{ *:[i32] }):$addr) |
| 27605 | /* 55841*/ 0, /*End of Scope*/ |
| 27606 | /* 55842*/ /*SwitchType*/ 9, MVT::i64,// ->55853 |
| 27607 | /* 55844*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 27608 | /* 55846*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 27609 | MVT::i64, 1/*#Ops*/, 0, |
| 27610 | // Src: (WebAssemblywrapper:{ *:[i64] } (texternalsym:{ *:[i64] }):$addr) - Complexity = 6 |
| 27611 | // Dst: (CONST_I64:{ *:[i64] } (texternalsym:{ *:[i64] }):$addr) |
| 27612 | /* 55853*/ 0, // EndSwitchType |
| 27613 | /* 55854*/ /*SwitchOpcode*/ 21, TARGET_VAL(ISD::MCSymbol),// ->55878 |
| 27614 | /* 55857*/ OPC_MoveParent, |
| 27615 | /* 55858*/ OPC_SwitchType /*2 cases */, 7, MVT::i32,// ->55868 |
| 27616 | /* 55861*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 27617 | MVT::i32, 1/*#Ops*/, 0, |
| 27618 | // Src: (WebAssemblywrapper:{ *:[i32] } (mcsym:{ *:[i32] }):$sym) - Complexity = 6 |
| 27619 | // Dst: (CONST_I32:{ *:[i32] } (mcsym:{ *:[i32] }):$sym) |
| 27620 | /* 55868*/ /*SwitchType*/ 7, MVT::i64,// ->55877 |
| 27621 | /* 55870*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 27622 | MVT::i64, 1/*#Ops*/, 0, |
| 27623 | // Src: (WebAssemblywrapper:{ *:[i64] } (mcsym:{ *:[i64] }):$sym) - Complexity = 6 |
| 27624 | // Dst: (CONST_I64:{ *:[i64] } (mcsym:{ *:[i64] }):$sym) |
| 27625 | /* 55877*/ 0, // EndSwitchType |
| 27626 | /* 55878*/ 0, // EndSwitchOpcode |
| 27627 | /* 55879*/ /*SwitchOpcode*/ 30, TARGET_VAL(WebAssemblyISD::WrapperPIC),// ->55912 |
| 27628 | /* 55882*/ OPC_RecordChild0, // #0 = $addr |
| 27629 | /* 55883*/ OPC_MoveChild0, |
| 27630 | /* 55884*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 27631 | /* 55887*/ OPC_MoveParent, |
| 27632 | /* 55888*/ OPC_SwitchType /*2 cases */, 9, MVT::i32,// ->55900 |
| 27633 | /* 55891*/ OPC_CheckPatternPredicate, 13, // (!Subtarget->hasAddr64()) && (TM.isPositionIndependent()) |
| 27634 | /* 55893*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 27635 | MVT::i32, 1/*#Ops*/, 0, |
| 27636 | // Src: (WebAssemblywrapperPIC:{ *:[i32] } (tglobaladdr:{ *:[i32] }):$addr) - Complexity = 6 |
| 27637 | // Dst: (CONST_I32:{ *:[i32] } (tglobaladdr:{ *:[i32] }):$addr) |
| 27638 | /* 55900*/ /*SwitchType*/ 9, MVT::i64,// ->55911 |
| 27639 | /* 55902*/ OPC_CheckPatternPredicate, 14, // (Subtarget->hasAddr64()) && (TM.isPositionIndependent()) |
| 27640 | /* 55904*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 27641 | MVT::i64, 1/*#Ops*/, 0, |
| 27642 | // Src: (WebAssemblywrapperPIC:{ *:[i64] } (tglobaladdr:{ *:[i64] }):$addr) - Complexity = 6 |
| 27643 | // Dst: (CONST_I64:{ *:[i64] } (tglobaladdr:{ *:[i64] }):$addr) |
| 27644 | /* 55911*/ 0, // EndSwitchType |
| 27645 | /* 55912*/ /*SwitchOpcode*/ 58, TARGET_VAL(WebAssemblyISD::MEMORY_FILL),// ->55973 |
| 27646 | /* 55915*/ OPC_RecordNode, // #0 = 'wasm_memset' chained node |
| 27647 | /* 55916*/ OPC_RecordChild1, // #1 = $idx |
| 27648 | /* 55917*/ OPC_MoveChild1, |
| 27649 | /* 55918*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 27650 | /* 55921*/ OPC_CheckType, MVT::i32, |
| 27651 | /* 55923*/ OPC_MoveParent, |
| 27652 | /* 55924*/ OPC_RecordChild2, // #2 = $dst |
| 27653 | /* 55925*/ OPC_Scope, 22, /*->55949*/ // 2 children in Scope |
| 27654 | /* 55927*/ OPC_CheckChild2Type, MVT::i32, |
| 27655 | /* 55929*/ OPC_RecordChild3, // #3 = $value |
| 27656 | /* 55930*/ OPC_CheckChild3Type, MVT::i32, |
| 27657 | /* 55932*/ OPC_RecordChild4, // #4 = $size |
| 27658 | /* 55933*/ OPC_CheckChild4Type, MVT::i32, |
| 27659 | /* 55935*/ OPC_CheckPatternPredicate, 12, // (Subtarget->hasBulkMemory()) |
| 27660 | /* 55937*/ OPC_EmitMergeInputChains1_0, |
| 27661 | /* 55938*/ OPC_EmitConvertToTarget, 1, |
| 27662 | /* 55940*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::anonymous_4565MEMORY_FILL_A32), 0|OPFL_Chain, |
| 27663 | 4/*#Ops*/, 5, 2, 3, 4, |
| 27664 | // Src: (wasm_memset (imm:{ *:[i32] }):$idx, I32:{ *:[i32] }:$dst, I32:{ *:[i32] }:$value, I32:{ *:[i32] }:$size) - Complexity = 6 |
| 27665 | // Dst: (anonymous_4565MEMORY_FILL_A32 (imm:{ *:[i32] }):$idx, I32:{ *:[i32] }:$dst, I32:{ *:[i32] }:$value, I32:{ *:[i32] }:$size) |
| 27666 | /* 55949*/ /*Scope*/ 22, /*->55972*/ |
| 27667 | /* 55950*/ OPC_CheckChild2Type, MVT::i64, |
| 27668 | /* 55952*/ OPC_RecordChild3, // #3 = $value |
| 27669 | /* 55953*/ OPC_CheckChild3Type, MVT::i32, |
| 27670 | /* 55955*/ OPC_RecordChild4, // #4 = $size |
| 27671 | /* 55956*/ OPC_CheckChild4Type, MVT::i64, |
| 27672 | /* 55958*/ OPC_CheckPatternPredicate, 12, // (Subtarget->hasBulkMemory()) |
| 27673 | /* 55960*/ OPC_EmitMergeInputChains1_0, |
| 27674 | /* 55961*/ OPC_EmitConvertToTarget, 1, |
| 27675 | /* 55963*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::anonymous_4566MEMORY_FILL_A64), 0|OPFL_Chain, |
| 27676 | 4/*#Ops*/, 5, 2, 3, 4, |
| 27677 | // Src: (wasm_memset (imm:{ *:[i32] }):$idx, I64:{ *:[i64] }:$dst, I32:{ *:[i32] }:$value, I64:{ *:[i64] }:$size) - Complexity = 6 |
| 27678 | // Dst: (anonymous_4566MEMORY_FILL_A64 (imm:{ *:[i32] }):$idx, I64:{ *:[i64] }:$dst, I32:{ *:[i32] }:$value, I64:{ *:[i64] }:$size) |
| 27679 | /* 55972*/ 0, /*End of Scope*/ |
| 27680 | /* 55973*/ /*SwitchOpcode*/ 25, TARGET_VAL(ISD::Constant),// ->56001 |
| 27681 | /* 55976*/ OPC_RecordNode, // #0 = $imm |
| 27682 | /* 55977*/ OPC_SwitchType /*2 cases */, 9, MVT::i32,// ->55989 |
| 27683 | /* 55980*/ OPC_EmitConvertToTarget, 0, |
| 27684 | /* 55982*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 27685 | MVT::i32, 1/*#Ops*/, 1, |
| 27686 | // Src: (imm:{ *:[i32] }):$imm - Complexity = 3 |
| 27687 | // Dst: (CONST_I32:{ *:[i32] } (imm:{ *:[i32] }):$imm) |
| 27688 | /* 55989*/ /*SwitchType*/ 9, MVT::i64,// ->56000 |
| 27689 | /* 55991*/ OPC_EmitConvertToTarget, 0, |
| 27690 | /* 55993*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 27691 | MVT::i64, 1/*#Ops*/, 1, |
| 27692 | // Src: (imm:{ *:[i64] }):$imm - Complexity = 3 |
| 27693 | // Dst: (CONST_I64:{ *:[i64] } (imm:{ *:[i64] }):$imm) |
| 27694 | /* 56000*/ 0, // EndSwitchType |
| 27695 | /* 56001*/ /*SwitchOpcode*/ 14, TARGET_VAL(ISD::BR),// ->56018 |
| 27696 | /* 56004*/ OPC_RecordNode, // #0 = 'br' chained node |
| 27697 | /* 56005*/ OPC_RecordChild1, // #1 = $dst |
| 27698 | /* 56006*/ OPC_MoveChild1, |
| 27699 | /* 56007*/ OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| 27700 | /* 56010*/ OPC_MoveParent, |
| 27701 | /* 56011*/ OPC_EmitMergeInputChains1_0, |
| 27702 | /* 56012*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::BR), 0|OPFL_Chain, |
| 27703 | 1/*#Ops*/, 1, |
| 27704 | // Src: (br (bb:{ *:[Other] }):$dst) - Complexity = 3 |
| 27705 | // Dst: (BR (bb:{ *:[Other] }):$dst) |
| 27706 | /* 56018*/ /*SwitchOpcode*/ 24, TARGET_VAL(WebAssemblyISD::BR_TABLE),// ->56045 |
| 27707 | /* 56021*/ OPC_RecordNode, // #0 = 'WebAssemblybr_table' chained node |
| 27708 | /* 56022*/ OPC_RecordChild1, // #1 = $index |
| 27709 | /* 56023*/ OPC_Scope, 9, /*->56034*/ // 2 children in Scope |
| 27710 | /* 56025*/ OPC_CheckChild1Type, MVT::i32, |
| 27711 | /* 56027*/ OPC_EmitMergeInputChains1_0, |
| 27712 | /* 56028*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::BR_TABLE_I32), 0|OPFL_Chain|OPFL_Variadic1, |
| 27713 | 1/*#Ops*/, 1, |
| 27714 | // Src: (WebAssemblybr_table I32:{ *:[i32] }:$index) - Complexity = 3 |
| 27715 | // Dst: (BR_TABLE_I32 I32:{ *:[i32] }:$index) |
| 27716 | /* 56034*/ /*Scope*/ 9, /*->56044*/ |
| 27717 | /* 56035*/ OPC_CheckChild1Type, MVT::i64, |
| 27718 | /* 56037*/ OPC_EmitMergeInputChains1_0, |
| 27719 | /* 56038*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::BR_TABLE_I64), 0|OPFL_Chain|OPFL_Variadic1, |
| 27720 | 1/*#Ops*/, 1, |
| 27721 | // Src: (WebAssemblybr_table I64:{ *:[i64] }:$index) - Complexity = 3 |
| 27722 | // Dst: (BR_TABLE_I64 I64:{ *:[i64] }:$index) |
| 27723 | /* 56044*/ 0, /*End of Scope*/ |
| 27724 | /* 56045*/ /*SwitchOpcode*/ 7, TARGET_VAL(WebAssemblyISD::RETURN),// ->56055 |
| 27725 | /* 56048*/ OPC_RecordNode, // #0 = 'WebAssemblyreturn' chained node |
| 27726 | /* 56049*/ OPC_EmitMergeInputChains1_0, |
| 27727 | /* 56050*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::RETURN), 0|OPFL_Chain|OPFL_Variadic0, |
| 27728 | 0/*#Ops*/, |
| 27729 | // Src: (WebAssemblyreturn) - Complexity = 3 |
| 27730 | // Dst: (RETURN) |
| 27731 | /* 56055*/ /*SwitchOpcode*/ 7, TARGET_VAL(ISD::TRAP),// ->56065 |
| 27732 | /* 56058*/ OPC_RecordNode, // #0 = 'trap' chained node |
| 27733 | /* 56059*/ OPC_EmitMergeInputChains1_0, |
| 27734 | /* 56060*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::UNREACHABLE), 0|OPFL_Chain, |
| 27735 | 0/*#Ops*/, |
| 27736 | // Src: (trap) - Complexity = 3 |
| 27737 | // Dst: (UNREACHABLE) |
| 27738 | /* 56065*/ /*SwitchOpcode*/ 7, TARGET_VAL(ISD::DEBUGTRAP),// ->56075 |
| 27739 | /* 56068*/ OPC_RecordNode, // #0 = 'debugtrap' chained node |
| 27740 | /* 56069*/ OPC_EmitMergeInputChains1_0, |
| 27741 | /* 56070*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::DEBUG_UNREACHABLE), 0|OPFL_Chain, |
| 27742 | 0/*#Ops*/, |
| 27743 | // Src: (debugtrap) - Complexity = 3 |
| 27744 | // Dst: (DEBUG_UNREACHABLE) |
| 27745 | /* 56075*/ /*SwitchOpcode*/ 9, TARGET_VAL(ISD::CLEANUPRET),// ->56087 |
| 27746 | /* 56078*/ OPC_RecordNode, // #0 = 'cleanupret' chained node |
| 27747 | /* 56079*/ OPC_CheckPatternPredicate, 9, // (Subtarget->hasExceptionHandling()) |
| 27748 | /* 56081*/ OPC_EmitMergeInputChains1_0, |
| 27749 | /* 56082*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::CLEANUPRET), 0|OPFL_Chain, |
| 27750 | 0/*#Ops*/, |
| 27751 | // Src: (cleanupret) - Complexity = 3 |
| 27752 | // Dst: (CLEANUPRET) |
| 27753 | /* 56087*/ /*SwitchOpcode*/ 23, TARGET_VAL(ISD::CATCHRET),// ->56113 |
| 27754 | /* 56090*/ OPC_RecordNode, // #0 = 'catchret' chained node |
| 27755 | /* 56091*/ OPC_RecordChild1, // #1 = $dst |
| 27756 | /* 56092*/ OPC_MoveChild1, |
| 27757 | /* 56093*/ OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| 27758 | /* 56096*/ OPC_MoveParent, |
| 27759 | /* 56097*/ OPC_RecordChild2, // #2 = $from |
| 27760 | /* 56098*/ OPC_MoveChild2, |
| 27761 | /* 56099*/ OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| 27762 | /* 56102*/ OPC_MoveParent, |
| 27763 | /* 56103*/ OPC_CheckPatternPredicate, 9, // (Subtarget->hasExceptionHandling()) |
| 27764 | /* 56105*/ OPC_EmitMergeInputChains1_0, |
| 27765 | /* 56106*/ OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::CATCHRET), 0|OPFL_Chain, |
| 27766 | 2/*#Ops*/, 1, 2, |
| 27767 | // Src: (catchret (bb:{ *:[Other] }):$dst, (bb:{ *:[Other] }):$from) - Complexity = 3 |
| 27768 | // Dst: (CATCHRET (bb:{ *:[Other] }):$dst, (bb:{ *:[Other] }):$from) |
| 27769 | /* 56113*/ /*SwitchOpcode*/ 72, TARGET_VAL(ISD::ADD),// ->56188 |
| 27770 | /* 56116*/ OPC_RecordChild0, // #0 = $lhs |
| 27771 | /* 56117*/ OPC_RecordChild1, // #1 = $rhs |
| 27772 | /* 56118*/ OPC_SwitchType /*6 cases */, 8, MVT::i32,// ->56129 |
| 27773 | /* 56121*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_I32), 0, |
| 27774 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 27775 | // Src: (add:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 27776 | // Dst: (ADD_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 27777 | /* 56129*/ /*SwitchType*/ 8, MVT::i64,// ->56139 |
| 27778 | /* 56131*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_I64), 0, |
| 27779 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 27780 | // Src: (add:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 27781 | // Dst: (ADD_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 27782 | /* 56139*/ /*SwitchType*/ 10, MVT::v16i8,// ->56151 |
| 27783 | /* 56141*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27784 | /* 56143*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_I8x16), 0, |
| 27785 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 27786 | // Src: (add:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 3 |
| 27787 | // Dst: (ADD_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 27788 | /* 56151*/ /*SwitchType*/ 10, MVT::v8i16,// ->56163 |
| 27789 | /* 56153*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27790 | /* 56155*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_I16x8), 0, |
| 27791 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 27792 | // Src: (add:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 27793 | // Dst: (ADD_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 27794 | /* 56163*/ /*SwitchType*/ 10, MVT::v4i32,// ->56175 |
| 27795 | /* 56165*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27796 | /* 56167*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_I32x4), 0, |
| 27797 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 27798 | // Src: (add:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 3 |
| 27799 | // Dst: (ADD_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 27800 | /* 56175*/ /*SwitchType*/ 10, MVT::v2i64,// ->56187 |
| 27801 | /* 56177*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27802 | /* 56179*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_I64x2), 0, |
| 27803 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 27804 | // Src: (add:{ *:[v2i64] } V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) - Complexity = 3 |
| 27805 | // Dst: (ADD_I64x2:{ *:[v2i64] } V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) |
| 27806 | /* 56187*/ 0, // EndSwitchType |
| 27807 | /* 56188*/ /*SwitchOpcode*/ 3|128,1/*131*/, TARGET_VAL(ISD::SUB),// ->56323 |
| 27808 | /* 56192*/ OPC_Scope, 24, /*->56218*/ // 3 children in Scope |
| 27809 | /* 56194*/ OPC_RecordChild0, // #0 = $lhs |
| 27810 | /* 56195*/ OPC_RecordChild1, // #1 = $rhs |
| 27811 | /* 56196*/ OPC_SwitchType /*2 cases */, 8, MVT::i32,// ->56207 |
| 27812 | /* 56199*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_I32), 0, |
| 27813 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 27814 | // Src: (sub:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 27815 | // Dst: (SUB_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 27816 | /* 56207*/ /*SwitchType*/ 8, MVT::i64,// ->56217 |
| 27817 | /* 56209*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_I64), 0, |
| 27818 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 27819 | // Src: (sub:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 27820 | // Dst: (SUB_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 27821 | /* 56217*/ 0, // EndSwitchType |
| 27822 | /* 56218*/ /*Scope*/ 50, /*->56269*/ |
| 27823 | /* 56219*/ OPC_MoveChild0, |
| 27824 | /* 56220*/ OPC_CheckImmAllZerosV, |
| 27825 | /* 56221*/ OPC_MoveParent, |
| 27826 | /* 56222*/ OPC_RecordChild1, // #0 = $v |
| 27827 | /* 56223*/ OPC_SwitchType /*4 cases */, 9, MVT::v16i8,// ->56235 |
| 27828 | /* 56226*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27829 | /* 56228*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEG_I8x16), 0, |
| 27830 | MVT::v16i8, 1/*#Ops*/, 0, |
| 27831 | // Src: (sub:{ *:[v16i8] } immAllZerosV:{ *:[v16i8] }, V128:{ *:[v16i8] }:$v) - Complexity = 7 |
| 27832 | // Dst: (NEG_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$v) |
| 27833 | /* 56235*/ /*SwitchType*/ 9, MVT::v8i16,// ->56246 |
| 27834 | /* 56237*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27835 | /* 56239*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEG_I16x8), 0, |
| 27836 | MVT::v8i16, 1/*#Ops*/, 0, |
| 27837 | // Src: (sub:{ *:[v8i16] } immAllZerosV:{ *:[v8i16] }, V128:{ *:[v8i16] }:$v) - Complexity = 7 |
| 27838 | // Dst: (NEG_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$v) |
| 27839 | /* 56246*/ /*SwitchType*/ 9, MVT::v4i32,// ->56257 |
| 27840 | /* 56248*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27841 | /* 56250*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEG_I32x4), 0, |
| 27842 | MVT::v4i32, 1/*#Ops*/, 0, |
| 27843 | // Src: (sub:{ *:[v4i32] } immAllZerosV:{ *:[v4i32] }, V128:{ *:[v4i32] }:$v) - Complexity = 7 |
| 27844 | // Dst: (NEG_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$v) |
| 27845 | /* 56257*/ /*SwitchType*/ 9, MVT::v2i64,// ->56268 |
| 27846 | /* 56259*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27847 | /* 56261*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEG_I64x2), 0, |
| 27848 | MVT::v2i64, 1/*#Ops*/, 0, |
| 27849 | // Src: (sub:{ *:[v2i64] } immAllZerosV:{ *:[v2i64] }, V128:{ *:[v2i64] }:$v) - Complexity = 7 |
| 27850 | // Dst: (NEG_I64x2:{ *:[v2i64] } V128:{ *:[v2i64] }:$v) |
| 27851 | /* 56268*/ 0, // EndSwitchType |
| 27852 | /* 56269*/ /*Scope*/ 52, /*->56322*/ |
| 27853 | /* 56270*/ OPC_RecordChild0, // #0 = $lhs |
| 27854 | /* 56271*/ OPC_RecordChild1, // #1 = $rhs |
| 27855 | /* 56272*/ OPC_SwitchType /*4 cases */, 10, MVT::v16i8,// ->56285 |
| 27856 | /* 56275*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27857 | /* 56277*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_I8x16), 0, |
| 27858 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 27859 | // Src: (sub:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 3 |
| 27860 | // Dst: (SUB_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 27861 | /* 56285*/ /*SwitchType*/ 10, MVT::v8i16,// ->56297 |
| 27862 | /* 56287*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27863 | /* 56289*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_I16x8), 0, |
| 27864 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 27865 | // Src: (sub:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 27866 | // Dst: (SUB_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 27867 | /* 56297*/ /*SwitchType*/ 10, MVT::v4i32,// ->56309 |
| 27868 | /* 56299*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27869 | /* 56301*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_I32x4), 0, |
| 27870 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 27871 | // Src: (sub:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 3 |
| 27872 | // Dst: (SUB_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 27873 | /* 56309*/ /*SwitchType*/ 10, MVT::v2i64,// ->56321 |
| 27874 | /* 56311*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27875 | /* 56313*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_I64x2), 0, |
| 27876 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 27877 | // Src: (sub:{ *:[v2i64] } V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) - Complexity = 3 |
| 27878 | // Dst: (SUB_I64x2:{ *:[v2i64] } V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) |
| 27879 | /* 56321*/ 0, // EndSwitchType |
| 27880 | /* 56322*/ 0, /*End of Scope*/ |
| 27881 | /* 56323*/ /*SwitchOpcode*/ 60, TARGET_VAL(ISD::MUL),// ->56386 |
| 27882 | /* 56326*/ OPC_RecordChild0, // #0 = $lhs |
| 27883 | /* 56327*/ OPC_RecordChild1, // #1 = $rhs |
| 27884 | /* 56328*/ OPC_SwitchType /*5 cases */, 8, MVT::i32,// ->56339 |
| 27885 | /* 56331*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MUL_I32), 0, |
| 27886 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 27887 | // Src: (mul:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 27888 | // Dst: (MUL_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 27889 | /* 56339*/ /*SwitchType*/ 8, MVT::i64,// ->56349 |
| 27890 | /* 56341*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MUL_I64), 0, |
| 27891 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 27892 | // Src: (mul:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 27893 | // Dst: (MUL_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 27894 | /* 56349*/ /*SwitchType*/ 10, MVT::v8i16,// ->56361 |
| 27895 | /* 56351*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27896 | /* 56353*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MUL_I16x8), 0, |
| 27897 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 27898 | // Src: (mul:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 27899 | // Dst: (MUL_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 27900 | /* 56361*/ /*SwitchType*/ 10, MVT::v4i32,// ->56373 |
| 27901 | /* 56363*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27902 | /* 56365*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MUL_I32x4), 0, |
| 27903 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 27904 | // Src: (mul:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 3 |
| 27905 | // Dst: (MUL_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 27906 | /* 56373*/ /*SwitchType*/ 10, MVT::v2i64,// ->56385 |
| 27907 | /* 56375*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 27908 | /* 56377*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MUL_I64x2), 0, |
| 27909 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 27910 | // Src: (mul:{ *:[v2i64] } V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) - Complexity = 3 |
| 27911 | // Dst: (MUL_I64x2:{ *:[v2i64] } V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) |
| 27912 | /* 56385*/ 0, // EndSwitchType |
| 27913 | /* 56386*/ /*SwitchOpcode*/ 24, TARGET_VAL(ISD::SDIV),// ->56413 |
| 27914 | /* 56389*/ OPC_RecordChild0, // #0 = $lhs |
| 27915 | /* 56390*/ OPC_RecordChild1, // #1 = $rhs |
| 27916 | /* 56391*/ OPC_SwitchType /*2 cases */, 8, MVT::i32,// ->56402 |
| 27917 | /* 56394*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::DIV_S_I32), 0, |
| 27918 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 27919 | // Src: (sdiv:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 27920 | // Dst: (DIV_S_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 27921 | /* 56402*/ /*SwitchType*/ 8, MVT::i64,// ->56412 |
| 27922 | /* 56404*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::DIV_S_I64), 0, |
| 27923 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 27924 | // Src: (sdiv:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 27925 | // Dst: (DIV_S_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 27926 | /* 56412*/ 0, // EndSwitchType |
| 27927 | /* 56413*/ /*SwitchOpcode*/ 24, TARGET_VAL(ISD::UDIV),// ->56440 |
| 27928 | /* 56416*/ OPC_RecordChild0, // #0 = $lhs |
| 27929 | /* 56417*/ OPC_RecordChild1, // #1 = $rhs |
| 27930 | /* 56418*/ OPC_SwitchType /*2 cases */, 8, MVT::i32,// ->56429 |
| 27931 | /* 56421*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::DIV_U_I32), 0, |
| 27932 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 27933 | // Src: (udiv:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 27934 | // Dst: (DIV_U_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 27935 | /* 56429*/ /*SwitchType*/ 8, MVT::i64,// ->56439 |
| 27936 | /* 56431*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::DIV_U_I64), 0, |
| 27937 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 27938 | // Src: (udiv:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 27939 | // Dst: (DIV_U_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 27940 | /* 56439*/ 0, // EndSwitchType |
| 27941 | /* 56440*/ /*SwitchOpcode*/ 24, TARGET_VAL(ISD::SREM),// ->56467 |
| 27942 | /* 56443*/ OPC_RecordChild0, // #0 = $lhs |
| 27943 | /* 56444*/ OPC_RecordChild1, // #1 = $rhs |
| 27944 | /* 56445*/ OPC_SwitchType /*2 cases */, 8, MVT::i32,// ->56456 |
| 27945 | /* 56448*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REM_S_I32), 0, |
| 27946 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 27947 | // Src: (srem:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 27948 | // Dst: (REM_S_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 27949 | /* 56456*/ /*SwitchType*/ 8, MVT::i64,// ->56466 |
| 27950 | /* 56458*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REM_S_I64), 0, |
| 27951 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 27952 | // Src: (srem:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 27953 | // Dst: (REM_S_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 27954 | /* 56466*/ 0, // EndSwitchType |
| 27955 | /* 56467*/ /*SwitchOpcode*/ 24, TARGET_VAL(ISD::UREM),// ->56494 |
| 27956 | /* 56470*/ OPC_RecordChild0, // #0 = $lhs |
| 27957 | /* 56471*/ OPC_RecordChild1, // #1 = $rhs |
| 27958 | /* 56472*/ OPC_SwitchType /*2 cases */, 8, MVT::i32,// ->56483 |
| 27959 | /* 56475*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REM_U_I32), 0, |
| 27960 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 27961 | // Src: (urem:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 27962 | // Dst: (REM_U_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 27963 | /* 56483*/ /*SwitchType*/ 8, MVT::i64,// ->56493 |
| 27964 | /* 56485*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REM_U_I64), 0, |
| 27965 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 27966 | // Src: (urem:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 27967 | // Dst: (REM_U_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 27968 | /* 56493*/ 0, // EndSwitchType |
| 27969 | /* 56494*/ /*SwitchOpcode*/ 95|128,12/*1631*/, TARGET_VAL(ISD::OR),// ->58129 |
| 27970 | /* 56498*/ OPC_Scope, 24, /*->56524*/ // 3 children in Scope |
| 27971 | /* 56500*/ OPC_RecordChild0, // #0 = $lhs |
| 27972 | /* 56501*/ OPC_RecordChild1, // #1 = $rhs |
| 27973 | /* 56502*/ OPC_SwitchType /*2 cases */, 8, MVT::i32,// ->56513 |
| 27974 | /* 56505*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::OR_I32), 0, |
| 27975 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 27976 | // Src: (or:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 27977 | // Dst: (OR_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 27978 | /* 56513*/ /*SwitchType*/ 8, MVT::i64,// ->56523 |
| 27979 | /* 56515*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::OR_I64), 0, |
| 27980 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 27981 | // Src: (or:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 27982 | // Dst: (OR_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 27983 | /* 56523*/ 0, // EndSwitchType |
| 27984 | /* 56524*/ /*Scope*/ 21|128,12/*1557*/, /*->58083*/ |
| 27985 | /* 56526*/ OPC_MoveChild0, |
| 27986 | /* 56527*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 27987 | /* 56530*/ OPC_Scope, 102|128,1/*230*/, /*->56763*/ // 9 children in Scope |
| 27988 | /* 56533*/ OPC_RecordChild0, // #0 = $c |
| 27989 | /* 56534*/ OPC_RecordChild1, // #1 = $v1 |
| 27990 | /* 56535*/ OPC_MoveParent, |
| 27991 | /* 56536*/ OPC_MoveChild1, |
| 27992 | /* 56537*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 27993 | /* 56540*/ OPC_Scope, 81, /*->56623*/ // 4 children in Scope |
| 27994 | /* 56542*/ OPC_MoveChild0, |
| 27995 | /* 56543*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 27996 | /* 56546*/ OPC_Scope, 54, /*->56602*/ // 2 children in Scope |
| 27997 | /* 56548*/ OPC_CheckChild0Same, 0, |
| 27998 | /* 56550*/ OPC_MoveChild1, |
| 27999 | /* 56551*/ OPC_CheckImmAllOnesV, |
| 28000 | /* 56552*/ OPC_MoveParent, |
| 28001 | /* 56553*/ OPC_MoveParent, |
| 28002 | /* 56554*/ OPC_RecordChild1, // #2 = $v2 |
| 28003 | /* 56555*/ OPC_MoveParent, |
| 28004 | /* 56556*/ OPC_SwitchType /*4 cases */, 9, MVT::v16i8,// ->56568 |
| 28005 | /* 56559*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28006 | MVT::v16i8, 3/*#Ops*/, 1, 2, 0, |
| 28007 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, V128:{ *:[v16i8] }:$v1), (and:{ *:[v16i8] } (xor:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, immAllOnesV:{ *:[v16i8] }), V128:{ *:[v16i8] }:$v2)) - Complexity = 16 |
| 28008 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28009 | /* 56568*/ /*SwitchType*/ 9, MVT::v8i16,// ->56579 |
| 28010 | /* 56570*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28011 | MVT::v8i16, 3/*#Ops*/, 1, 2, 0, |
| 28012 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, V128:{ *:[v8i16] }:$v1), (and:{ *:[v8i16] } (xor:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, immAllOnesV:{ *:[v8i16] }), V128:{ *:[v8i16] }:$v2)) - Complexity = 16 |
| 28013 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28014 | /* 56579*/ /*SwitchType*/ 9, MVT::v4i32,// ->56590 |
| 28015 | /* 56581*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28016 | MVT::v4i32, 3/*#Ops*/, 1, 2, 0, |
| 28017 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, V128:{ *:[v4i32] }:$v1), (and:{ *:[v4i32] } (xor:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, immAllOnesV:{ *:[v4i32] }), V128:{ *:[v4i32] }:$v2)) - Complexity = 16 |
| 28018 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28019 | /* 56590*/ /*SwitchType*/ 9, MVT::v2i64,// ->56601 |
| 28020 | /* 56592*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28021 | MVT::v2i64, 3/*#Ops*/, 1, 2, 0, |
| 28022 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, V128:{ *:[v2i64] }:$v1), (and:{ *:[v2i64] } (xor:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, immAllOnesV:{ *:[v2i64] }), V128:{ *:[v2i64] }:$v2)) - Complexity = 16 |
| 28023 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28024 | /* 56601*/ 0, // EndSwitchType |
| 28025 | /* 56602*/ /*Scope*/ 19, /*->56622*/ |
| 28026 | /* 56603*/ OPC_MoveChild0, |
| 28027 | /* 56604*/ OPC_CheckImmAllOnesV, |
| 28028 | /* 56605*/ OPC_MoveParent, |
| 28029 | /* 56606*/ OPC_CheckChild1Same, 0, |
| 28030 | /* 56608*/ OPC_MoveParent, |
| 28031 | /* 56609*/ OPC_RecordChild1, // #2 = $v2 |
| 28032 | /* 56610*/ OPC_MoveParent, |
| 28033 | /* 56611*/ OPC_CheckType, MVT::v16i8, |
| 28034 | /* 56613*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28035 | MVT::v16i8, 3/*#Ops*/, 1, 2, 0, |
| 28036 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, V128:{ *:[v16i8] }:$v1), (and:{ *:[v16i8] } (xor:{ *:[v16i8] } immAllOnesV:{ *:[v16i8] }, V128:{ *:[v16i8] }:$c), V128:{ *:[v16i8] }:$v2)) - Complexity = 16 |
| 28037 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28038 | /* 56622*/ 0, /*End of Scope*/ |
| 28039 | /* 56623*/ /*Scope*/ 45, /*->56669*/ |
| 28040 | /* 56624*/ OPC_RecordChild0, // #2 = $v2 |
| 28041 | /* 56625*/ OPC_MoveChild1, |
| 28042 | /* 56626*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28043 | /* 56629*/ OPC_Scope, 18, /*->56649*/ // 2 children in Scope |
| 28044 | /* 56631*/ OPC_CheckChild0Same, 0, |
| 28045 | /* 56633*/ OPC_MoveChild1, |
| 28046 | /* 56634*/ OPC_CheckImmAllOnesV, |
| 28047 | /* 56635*/ OPC_MoveParent, |
| 28048 | /* 56636*/ OPC_MoveParent, |
| 28049 | /* 56637*/ OPC_MoveParent, |
| 28050 | /* 56638*/ OPC_CheckType, MVT::v16i8, |
| 28051 | /* 56640*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28052 | MVT::v16i8, 3/*#Ops*/, 1, 2, 0, |
| 28053 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, V128:{ *:[v16i8] }:$v1), (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v2, (xor:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, immAllOnesV:{ *:[v16i8] }))) - Complexity = 16 |
| 28054 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28055 | /* 56649*/ /*Scope*/ 18, /*->56668*/ |
| 28056 | /* 56650*/ OPC_MoveChild0, |
| 28057 | /* 56651*/ OPC_CheckImmAllOnesV, |
| 28058 | /* 56652*/ OPC_MoveParent, |
| 28059 | /* 56653*/ OPC_CheckChild1Same, 0, |
| 28060 | /* 56655*/ OPC_MoveParent, |
| 28061 | /* 56656*/ OPC_MoveParent, |
| 28062 | /* 56657*/ OPC_CheckType, MVT::v16i8, |
| 28063 | /* 56659*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28064 | MVT::v16i8, 3/*#Ops*/, 1, 2, 0, |
| 28065 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, V128:{ *:[v16i8] }:$v1), (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v2, (xor:{ *:[v16i8] } immAllOnesV:{ *:[v16i8] }, V128:{ *:[v16i8] }:$c))) - Complexity = 16 |
| 28066 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28067 | /* 56668*/ 0, /*End of Scope*/ |
| 28068 | /* 56669*/ /*Scope*/ 46, /*->56716*/ |
| 28069 | /* 56670*/ OPC_MoveChild0, |
| 28070 | /* 56671*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28071 | /* 56674*/ OPC_Scope, 19, /*->56695*/ // 2 children in Scope |
| 28072 | /* 56676*/ OPC_CheckChild0Same, 1, |
| 28073 | /* 56678*/ OPC_MoveChild1, |
| 28074 | /* 56679*/ OPC_CheckImmAllOnesV, |
| 28075 | /* 56680*/ OPC_MoveParent, |
| 28076 | /* 56681*/ OPC_MoveParent, |
| 28077 | /* 56682*/ OPC_RecordChild1, // #2 = $v2 |
| 28078 | /* 56683*/ OPC_MoveParent, |
| 28079 | /* 56684*/ OPC_CheckType, MVT::v16i8, |
| 28080 | /* 56686*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28081 | MVT::v16i8, 3/*#Ops*/, 0, 2, 1, |
| 28082 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v1, V128:{ *:[v16i8] }:$c), (and:{ *:[v16i8] } (xor:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, immAllOnesV:{ *:[v16i8] }), V128:{ *:[v16i8] }:$v2)) - Complexity = 16 |
| 28083 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28084 | /* 56695*/ /*Scope*/ 19, /*->56715*/ |
| 28085 | /* 56696*/ OPC_MoveChild0, |
| 28086 | /* 56697*/ OPC_CheckImmAllOnesV, |
| 28087 | /* 56698*/ OPC_MoveParent, |
| 28088 | /* 56699*/ OPC_CheckChild1Same, 1, |
| 28089 | /* 56701*/ OPC_MoveParent, |
| 28090 | /* 56702*/ OPC_RecordChild1, // #2 = $v2 |
| 28091 | /* 56703*/ OPC_MoveParent, |
| 28092 | /* 56704*/ OPC_CheckType, MVT::v16i8, |
| 28093 | /* 56706*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28094 | MVT::v16i8, 3/*#Ops*/, 0, 2, 1, |
| 28095 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v1, V128:{ *:[v16i8] }:$c), (and:{ *:[v16i8] } (xor:{ *:[v16i8] } immAllOnesV:{ *:[v16i8] }, V128:{ *:[v16i8] }:$c), V128:{ *:[v16i8] }:$v2)) - Complexity = 16 |
| 28096 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28097 | /* 56715*/ 0, /*End of Scope*/ |
| 28098 | /* 56716*/ /*Scope*/ 45, /*->56762*/ |
| 28099 | /* 56717*/ OPC_RecordChild0, // #2 = $v2 |
| 28100 | /* 56718*/ OPC_MoveChild1, |
| 28101 | /* 56719*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28102 | /* 56722*/ OPC_Scope, 18, /*->56742*/ // 2 children in Scope |
| 28103 | /* 56724*/ OPC_CheckChild0Same, 1, |
| 28104 | /* 56726*/ OPC_MoveChild1, |
| 28105 | /* 56727*/ OPC_CheckImmAllOnesV, |
| 28106 | /* 56728*/ OPC_MoveParent, |
| 28107 | /* 56729*/ OPC_MoveParent, |
| 28108 | /* 56730*/ OPC_MoveParent, |
| 28109 | /* 56731*/ OPC_CheckType, MVT::v16i8, |
| 28110 | /* 56733*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28111 | MVT::v16i8, 3/*#Ops*/, 0, 2, 1, |
| 28112 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v1, V128:{ *:[v16i8] }:$c), (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v2, (xor:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, immAllOnesV:{ *:[v16i8] }))) - Complexity = 16 |
| 28113 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28114 | /* 56742*/ /*Scope*/ 18, /*->56761*/ |
| 28115 | /* 56743*/ OPC_MoveChild0, |
| 28116 | /* 56744*/ OPC_CheckImmAllOnesV, |
| 28117 | /* 56745*/ OPC_MoveParent, |
| 28118 | /* 56746*/ OPC_CheckChild1Same, 1, |
| 28119 | /* 56748*/ OPC_MoveParent, |
| 28120 | /* 56749*/ OPC_MoveParent, |
| 28121 | /* 56750*/ OPC_CheckType, MVT::v16i8, |
| 28122 | /* 56752*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28123 | MVT::v16i8, 3/*#Ops*/, 0, 2, 1, |
| 28124 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v1, V128:{ *:[v16i8] }:$c), (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v2, (xor:{ *:[v16i8] } immAllOnesV:{ *:[v16i8] }, V128:{ *:[v16i8] }:$c))) - Complexity = 16 |
| 28125 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28126 | /* 56761*/ 0, /*End of Scope*/ |
| 28127 | /* 56762*/ 0, /*End of Scope*/ |
| 28128 | /* 56763*/ /*Scope*/ 98, /*->56862*/ |
| 28129 | /* 56764*/ OPC_MoveChild0, |
| 28130 | /* 56765*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28131 | /* 56768*/ OPC_Scope, 45, /*->56815*/ // 2 children in Scope |
| 28132 | /* 56770*/ OPC_RecordChild0, // #0 = $c |
| 28133 | /* 56771*/ OPC_MoveChild1, |
| 28134 | /* 56772*/ OPC_CheckImmAllOnesV, |
| 28135 | /* 56773*/ OPC_MoveParent, |
| 28136 | /* 56774*/ OPC_MoveParent, |
| 28137 | /* 56775*/ OPC_RecordChild1, // #1 = $v2 |
| 28138 | /* 56776*/ OPC_MoveParent, |
| 28139 | /* 56777*/ OPC_MoveChild1, |
| 28140 | /* 56778*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28141 | /* 56781*/ OPC_Scope, 15, /*->56798*/ // 2 children in Scope |
| 28142 | /* 56783*/ OPC_CheckChild0Same, 0, |
| 28143 | /* 56785*/ OPC_RecordChild1, // #2 = $v1 |
| 28144 | /* 56786*/ OPC_MoveParent, |
| 28145 | /* 56787*/ OPC_CheckType, MVT::v16i8, |
| 28146 | /* 56789*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28147 | MVT::v16i8, 3/*#Ops*/, 2, 1, 0, |
| 28148 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } (xor:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, immAllOnesV:{ *:[v16i8] }), V128:{ *:[v16i8] }:$v2), (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, V128:{ *:[v16i8] }:$v1)) - Complexity = 16 |
| 28149 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28150 | /* 56798*/ /*Scope*/ 15, /*->56814*/ |
| 28151 | /* 56799*/ OPC_RecordChild0, // #2 = $v1 |
| 28152 | /* 56800*/ OPC_CheckChild1Same, 0, |
| 28153 | /* 56802*/ OPC_MoveParent, |
| 28154 | /* 56803*/ OPC_CheckType, MVT::v16i8, |
| 28155 | /* 56805*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28156 | MVT::v16i8, 3/*#Ops*/, 2, 1, 0, |
| 28157 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } (xor:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, immAllOnesV:{ *:[v16i8] }), V128:{ *:[v16i8] }:$v2), (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v1, V128:{ *:[v16i8] }:$c)) - Complexity = 16 |
| 28158 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28159 | /* 56814*/ 0, /*End of Scope*/ |
| 28160 | /* 56815*/ /*Scope*/ 45, /*->56861*/ |
| 28161 | /* 56816*/ OPC_MoveChild0, |
| 28162 | /* 56817*/ OPC_CheckImmAllOnesV, |
| 28163 | /* 56818*/ OPC_MoveParent, |
| 28164 | /* 56819*/ OPC_RecordChild1, // #0 = $c |
| 28165 | /* 56820*/ OPC_MoveParent, |
| 28166 | /* 56821*/ OPC_RecordChild1, // #1 = $v2 |
| 28167 | /* 56822*/ OPC_MoveParent, |
| 28168 | /* 56823*/ OPC_MoveChild1, |
| 28169 | /* 56824*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28170 | /* 56827*/ OPC_Scope, 15, /*->56844*/ // 2 children in Scope |
| 28171 | /* 56829*/ OPC_CheckChild0Same, 0, |
| 28172 | /* 56831*/ OPC_RecordChild1, // #2 = $v1 |
| 28173 | /* 56832*/ OPC_MoveParent, |
| 28174 | /* 56833*/ OPC_CheckType, MVT::v16i8, |
| 28175 | /* 56835*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28176 | MVT::v16i8, 3/*#Ops*/, 2, 1, 0, |
| 28177 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } (xor:{ *:[v16i8] } immAllOnesV:{ *:[v16i8] }, V128:{ *:[v16i8] }:$c), V128:{ *:[v16i8] }:$v2), (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, V128:{ *:[v16i8] }:$v1)) - Complexity = 16 |
| 28178 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28179 | /* 56844*/ /*Scope*/ 15, /*->56860*/ |
| 28180 | /* 56845*/ OPC_RecordChild0, // #2 = $v1 |
| 28181 | /* 56846*/ OPC_CheckChild1Same, 0, |
| 28182 | /* 56848*/ OPC_MoveParent, |
| 28183 | /* 56849*/ OPC_CheckType, MVT::v16i8, |
| 28184 | /* 56851*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28185 | MVT::v16i8, 3/*#Ops*/, 2, 1, 0, |
| 28186 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } (xor:{ *:[v16i8] } immAllOnesV:{ *:[v16i8] }, V128:{ *:[v16i8] }:$c), V128:{ *:[v16i8] }:$v2), (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v1, V128:{ *:[v16i8] }:$c)) - Complexity = 16 |
| 28187 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28188 | /* 56860*/ 0, /*End of Scope*/ |
| 28189 | /* 56861*/ 0, /*End of Scope*/ |
| 28190 | /* 56862*/ /*Scope*/ 17|128,2/*273*/, /*->57137*/ |
| 28191 | /* 56864*/ OPC_RecordChild0, // #0 = $v2 |
| 28192 | /* 56865*/ OPC_Scope, 96, /*->56963*/ // 2 children in Scope |
| 28193 | /* 56867*/ OPC_MoveChild1, |
| 28194 | /* 56868*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28195 | /* 56871*/ OPC_Scope, 44, /*->56917*/ // 2 children in Scope |
| 28196 | /* 56873*/ OPC_RecordChild0, // #1 = $c |
| 28197 | /* 56874*/ OPC_MoveChild1, |
| 28198 | /* 56875*/ OPC_CheckImmAllOnesV, |
| 28199 | /* 56876*/ OPC_MoveParent, |
| 28200 | /* 56877*/ OPC_MoveParent, |
| 28201 | /* 56878*/ OPC_MoveParent, |
| 28202 | /* 56879*/ OPC_MoveChild1, |
| 28203 | /* 56880*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28204 | /* 56883*/ OPC_Scope, 15, /*->56900*/ // 2 children in Scope |
| 28205 | /* 56885*/ OPC_CheckChild0Same, 1, |
| 28206 | /* 56887*/ OPC_RecordChild1, // #2 = $v1 |
| 28207 | /* 56888*/ OPC_MoveParent, |
| 28208 | /* 56889*/ OPC_CheckType, MVT::v16i8, |
| 28209 | /* 56891*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28210 | MVT::v16i8, 3/*#Ops*/, 2, 0, 1, |
| 28211 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v2, (xor:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, immAllOnesV:{ *:[v16i8] })), (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, V128:{ *:[v16i8] }:$v1)) - Complexity = 16 |
| 28212 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28213 | /* 56900*/ /*Scope*/ 15, /*->56916*/ |
| 28214 | /* 56901*/ OPC_RecordChild0, // #2 = $v1 |
| 28215 | /* 56902*/ OPC_CheckChild1Same, 1, |
| 28216 | /* 56904*/ OPC_MoveParent, |
| 28217 | /* 56905*/ OPC_CheckType, MVT::v16i8, |
| 28218 | /* 56907*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28219 | MVT::v16i8, 3/*#Ops*/, 2, 0, 1, |
| 28220 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v2, (xor:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, immAllOnesV:{ *:[v16i8] })), (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v1, V128:{ *:[v16i8] }:$c)) - Complexity = 16 |
| 28221 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28222 | /* 56916*/ 0, /*End of Scope*/ |
| 28223 | /* 56917*/ /*Scope*/ 44, /*->56962*/ |
| 28224 | /* 56918*/ OPC_MoveChild0, |
| 28225 | /* 56919*/ OPC_CheckImmAllOnesV, |
| 28226 | /* 56920*/ OPC_MoveParent, |
| 28227 | /* 56921*/ OPC_RecordChild1, // #1 = $c |
| 28228 | /* 56922*/ OPC_MoveParent, |
| 28229 | /* 56923*/ OPC_MoveParent, |
| 28230 | /* 56924*/ OPC_MoveChild1, |
| 28231 | /* 56925*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28232 | /* 56928*/ OPC_Scope, 15, /*->56945*/ // 2 children in Scope |
| 28233 | /* 56930*/ OPC_CheckChild0Same, 1, |
| 28234 | /* 56932*/ OPC_RecordChild1, // #2 = $v1 |
| 28235 | /* 56933*/ OPC_MoveParent, |
| 28236 | /* 56934*/ OPC_CheckType, MVT::v16i8, |
| 28237 | /* 56936*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28238 | MVT::v16i8, 3/*#Ops*/, 2, 0, 1, |
| 28239 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v2, (xor:{ *:[v16i8] } immAllOnesV:{ *:[v16i8] }, V128:{ *:[v16i8] }:$c)), (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, V128:{ *:[v16i8] }:$v1)) - Complexity = 16 |
| 28240 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28241 | /* 56945*/ /*Scope*/ 15, /*->56961*/ |
| 28242 | /* 56946*/ OPC_RecordChild0, // #2 = $v1 |
| 28243 | /* 56947*/ OPC_CheckChild1Same, 1, |
| 28244 | /* 56949*/ OPC_MoveParent, |
| 28245 | /* 56950*/ OPC_CheckType, MVT::v16i8, |
| 28246 | /* 56952*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28247 | MVT::v16i8, 3/*#Ops*/, 2, 0, 1, |
| 28248 | // Src: (or:{ *:[v16i8] } (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v2, (xor:{ *:[v16i8] } immAllOnesV:{ *:[v16i8] }, V128:{ *:[v16i8] }:$c)), (and:{ *:[v16i8] } V128:{ *:[v16i8] }:$v1, V128:{ *:[v16i8] }:$c)) - Complexity = 16 |
| 28249 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 28250 | /* 56961*/ 0, /*End of Scope*/ |
| 28251 | /* 56962*/ 0, /*End of Scope*/ |
| 28252 | /* 56963*/ /*Scope*/ 43|128,1/*171*/, /*->57136*/ |
| 28253 | /* 56965*/ OPC_RecordChild1, // #1 = $v1 |
| 28254 | /* 56966*/ OPC_MoveParent, |
| 28255 | /* 56967*/ OPC_MoveChild1, |
| 28256 | /* 56968*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28257 | /* 56971*/ OPC_Scope, 23, /*->56996*/ // 4 children in Scope |
| 28258 | /* 56973*/ OPC_MoveChild0, |
| 28259 | /* 56974*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28260 | /* 56977*/ OPC_MoveChild0, |
| 28261 | /* 56978*/ OPC_CheckImmAllOnesV, |
| 28262 | /* 56979*/ OPC_MoveParent, |
| 28263 | /* 56980*/ OPC_CheckChild1Same, 0, |
| 28264 | /* 56982*/ OPC_MoveParent, |
| 28265 | /* 56983*/ OPC_RecordChild1, // #2 = $v2 |
| 28266 | /* 56984*/ OPC_MoveParent, |
| 28267 | /* 56985*/ OPC_CheckType, MVT::v8i16, |
| 28268 | /* 56987*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28269 | MVT::v8i16, 3/*#Ops*/, 1, 2, 0, |
| 28270 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, V128:{ *:[v8i16] }:$v1), (and:{ *:[v8i16] } (xor:{ *:[v8i16] } immAllOnesV:{ *:[v8i16] }, V128:{ *:[v8i16] }:$c), V128:{ *:[v8i16] }:$v2)) - Complexity = 16 |
| 28271 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28272 | /* 56996*/ /*Scope*/ 45, /*->57042*/ |
| 28273 | /* 56997*/ OPC_RecordChild0, // #2 = $v2 |
| 28274 | /* 56998*/ OPC_MoveChild1, |
| 28275 | /* 56999*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28276 | /* 57002*/ OPC_Scope, 18, /*->57022*/ // 2 children in Scope |
| 28277 | /* 57004*/ OPC_CheckChild0Same, 0, |
| 28278 | /* 57006*/ OPC_MoveChild1, |
| 28279 | /* 57007*/ OPC_CheckImmAllOnesV, |
| 28280 | /* 57008*/ OPC_MoveParent, |
| 28281 | /* 57009*/ OPC_MoveParent, |
| 28282 | /* 57010*/ OPC_MoveParent, |
| 28283 | /* 57011*/ OPC_CheckType, MVT::v8i16, |
| 28284 | /* 57013*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28285 | MVT::v8i16, 3/*#Ops*/, 1, 2, 0, |
| 28286 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, V128:{ *:[v8i16] }:$v1), (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v2, (xor:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, immAllOnesV:{ *:[v8i16] }))) - Complexity = 16 |
| 28287 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28288 | /* 57022*/ /*Scope*/ 18, /*->57041*/ |
| 28289 | /* 57023*/ OPC_MoveChild0, |
| 28290 | /* 57024*/ OPC_CheckImmAllOnesV, |
| 28291 | /* 57025*/ OPC_MoveParent, |
| 28292 | /* 57026*/ OPC_CheckChild1Same, 0, |
| 28293 | /* 57028*/ OPC_MoveParent, |
| 28294 | /* 57029*/ OPC_MoveParent, |
| 28295 | /* 57030*/ OPC_CheckType, MVT::v8i16, |
| 28296 | /* 57032*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28297 | MVT::v8i16, 3/*#Ops*/, 1, 2, 0, |
| 28298 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, V128:{ *:[v8i16] }:$v1), (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v2, (xor:{ *:[v8i16] } immAllOnesV:{ *:[v8i16] }, V128:{ *:[v8i16] }:$c))) - Complexity = 16 |
| 28299 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28300 | /* 57041*/ 0, /*End of Scope*/ |
| 28301 | /* 57042*/ /*Scope*/ 46, /*->57089*/ |
| 28302 | /* 57043*/ OPC_MoveChild0, |
| 28303 | /* 57044*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28304 | /* 57047*/ OPC_Scope, 19, /*->57068*/ // 2 children in Scope |
| 28305 | /* 57049*/ OPC_CheckChild0Same, 1, |
| 28306 | /* 57051*/ OPC_MoveChild1, |
| 28307 | /* 57052*/ OPC_CheckImmAllOnesV, |
| 28308 | /* 57053*/ OPC_MoveParent, |
| 28309 | /* 57054*/ OPC_MoveParent, |
| 28310 | /* 57055*/ OPC_RecordChild1, // #2 = $v2 |
| 28311 | /* 57056*/ OPC_MoveParent, |
| 28312 | /* 57057*/ OPC_CheckType, MVT::v8i16, |
| 28313 | /* 57059*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28314 | MVT::v8i16, 3/*#Ops*/, 0, 2, 1, |
| 28315 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v1, V128:{ *:[v8i16] }:$c), (and:{ *:[v8i16] } (xor:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, immAllOnesV:{ *:[v8i16] }), V128:{ *:[v8i16] }:$v2)) - Complexity = 16 |
| 28316 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28317 | /* 57068*/ /*Scope*/ 19, /*->57088*/ |
| 28318 | /* 57069*/ OPC_MoveChild0, |
| 28319 | /* 57070*/ OPC_CheckImmAllOnesV, |
| 28320 | /* 57071*/ OPC_MoveParent, |
| 28321 | /* 57072*/ OPC_CheckChild1Same, 1, |
| 28322 | /* 57074*/ OPC_MoveParent, |
| 28323 | /* 57075*/ OPC_RecordChild1, // #2 = $v2 |
| 28324 | /* 57076*/ OPC_MoveParent, |
| 28325 | /* 57077*/ OPC_CheckType, MVT::v8i16, |
| 28326 | /* 57079*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28327 | MVT::v8i16, 3/*#Ops*/, 0, 2, 1, |
| 28328 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v1, V128:{ *:[v8i16] }:$c), (and:{ *:[v8i16] } (xor:{ *:[v8i16] } immAllOnesV:{ *:[v8i16] }, V128:{ *:[v8i16] }:$c), V128:{ *:[v8i16] }:$v2)) - Complexity = 16 |
| 28329 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28330 | /* 57088*/ 0, /*End of Scope*/ |
| 28331 | /* 57089*/ /*Scope*/ 45, /*->57135*/ |
| 28332 | /* 57090*/ OPC_RecordChild0, // #2 = $v2 |
| 28333 | /* 57091*/ OPC_MoveChild1, |
| 28334 | /* 57092*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28335 | /* 57095*/ OPC_Scope, 18, /*->57115*/ // 2 children in Scope |
| 28336 | /* 57097*/ OPC_CheckChild0Same, 1, |
| 28337 | /* 57099*/ OPC_MoveChild1, |
| 28338 | /* 57100*/ OPC_CheckImmAllOnesV, |
| 28339 | /* 57101*/ OPC_MoveParent, |
| 28340 | /* 57102*/ OPC_MoveParent, |
| 28341 | /* 57103*/ OPC_MoveParent, |
| 28342 | /* 57104*/ OPC_CheckType, MVT::v8i16, |
| 28343 | /* 57106*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28344 | MVT::v8i16, 3/*#Ops*/, 0, 2, 1, |
| 28345 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v1, V128:{ *:[v8i16] }:$c), (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v2, (xor:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, immAllOnesV:{ *:[v8i16] }))) - Complexity = 16 |
| 28346 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28347 | /* 57115*/ /*Scope*/ 18, /*->57134*/ |
| 28348 | /* 57116*/ OPC_MoveChild0, |
| 28349 | /* 57117*/ OPC_CheckImmAllOnesV, |
| 28350 | /* 57118*/ OPC_MoveParent, |
| 28351 | /* 57119*/ OPC_CheckChild1Same, 1, |
| 28352 | /* 57121*/ OPC_MoveParent, |
| 28353 | /* 57122*/ OPC_MoveParent, |
| 28354 | /* 57123*/ OPC_CheckType, MVT::v8i16, |
| 28355 | /* 57125*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28356 | MVT::v8i16, 3/*#Ops*/, 0, 2, 1, |
| 28357 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v1, V128:{ *:[v8i16] }:$c), (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v2, (xor:{ *:[v8i16] } immAllOnesV:{ *:[v8i16] }, V128:{ *:[v8i16] }:$c))) - Complexity = 16 |
| 28358 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28359 | /* 57134*/ 0, /*End of Scope*/ |
| 28360 | /* 57135*/ 0, /*End of Scope*/ |
| 28361 | /* 57136*/ 0, /*End of Scope*/ |
| 28362 | /* 57137*/ /*Scope*/ 98, /*->57236*/ |
| 28363 | /* 57138*/ OPC_MoveChild0, |
| 28364 | /* 57139*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28365 | /* 57142*/ OPC_Scope, 45, /*->57189*/ // 2 children in Scope |
| 28366 | /* 57144*/ OPC_RecordChild0, // #0 = $c |
| 28367 | /* 57145*/ OPC_MoveChild1, |
| 28368 | /* 57146*/ OPC_CheckImmAllOnesV, |
| 28369 | /* 57147*/ OPC_MoveParent, |
| 28370 | /* 57148*/ OPC_MoveParent, |
| 28371 | /* 57149*/ OPC_RecordChild1, // #1 = $v2 |
| 28372 | /* 57150*/ OPC_MoveParent, |
| 28373 | /* 57151*/ OPC_MoveChild1, |
| 28374 | /* 57152*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28375 | /* 57155*/ OPC_Scope, 15, /*->57172*/ // 2 children in Scope |
| 28376 | /* 57157*/ OPC_CheckChild0Same, 0, |
| 28377 | /* 57159*/ OPC_RecordChild1, // #2 = $v1 |
| 28378 | /* 57160*/ OPC_MoveParent, |
| 28379 | /* 57161*/ OPC_CheckType, MVT::v8i16, |
| 28380 | /* 57163*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28381 | MVT::v8i16, 3/*#Ops*/, 2, 1, 0, |
| 28382 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } (xor:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, immAllOnesV:{ *:[v8i16] }), V128:{ *:[v8i16] }:$v2), (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, V128:{ *:[v8i16] }:$v1)) - Complexity = 16 |
| 28383 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28384 | /* 57172*/ /*Scope*/ 15, /*->57188*/ |
| 28385 | /* 57173*/ OPC_RecordChild0, // #2 = $v1 |
| 28386 | /* 57174*/ OPC_CheckChild1Same, 0, |
| 28387 | /* 57176*/ OPC_MoveParent, |
| 28388 | /* 57177*/ OPC_CheckType, MVT::v8i16, |
| 28389 | /* 57179*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28390 | MVT::v8i16, 3/*#Ops*/, 2, 1, 0, |
| 28391 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } (xor:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, immAllOnesV:{ *:[v8i16] }), V128:{ *:[v8i16] }:$v2), (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v1, V128:{ *:[v8i16] }:$c)) - Complexity = 16 |
| 28392 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28393 | /* 57188*/ 0, /*End of Scope*/ |
| 28394 | /* 57189*/ /*Scope*/ 45, /*->57235*/ |
| 28395 | /* 57190*/ OPC_MoveChild0, |
| 28396 | /* 57191*/ OPC_CheckImmAllOnesV, |
| 28397 | /* 57192*/ OPC_MoveParent, |
| 28398 | /* 57193*/ OPC_RecordChild1, // #0 = $c |
| 28399 | /* 57194*/ OPC_MoveParent, |
| 28400 | /* 57195*/ OPC_RecordChild1, // #1 = $v2 |
| 28401 | /* 57196*/ OPC_MoveParent, |
| 28402 | /* 57197*/ OPC_MoveChild1, |
| 28403 | /* 57198*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28404 | /* 57201*/ OPC_Scope, 15, /*->57218*/ // 2 children in Scope |
| 28405 | /* 57203*/ OPC_CheckChild0Same, 0, |
| 28406 | /* 57205*/ OPC_RecordChild1, // #2 = $v1 |
| 28407 | /* 57206*/ OPC_MoveParent, |
| 28408 | /* 57207*/ OPC_CheckType, MVT::v8i16, |
| 28409 | /* 57209*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28410 | MVT::v8i16, 3/*#Ops*/, 2, 1, 0, |
| 28411 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } (xor:{ *:[v8i16] } immAllOnesV:{ *:[v8i16] }, V128:{ *:[v8i16] }:$c), V128:{ *:[v8i16] }:$v2), (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, V128:{ *:[v8i16] }:$v1)) - Complexity = 16 |
| 28412 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28413 | /* 57218*/ /*Scope*/ 15, /*->57234*/ |
| 28414 | /* 57219*/ OPC_RecordChild0, // #2 = $v1 |
| 28415 | /* 57220*/ OPC_CheckChild1Same, 0, |
| 28416 | /* 57222*/ OPC_MoveParent, |
| 28417 | /* 57223*/ OPC_CheckType, MVT::v8i16, |
| 28418 | /* 57225*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28419 | MVT::v8i16, 3/*#Ops*/, 2, 1, 0, |
| 28420 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } (xor:{ *:[v8i16] } immAllOnesV:{ *:[v8i16] }, V128:{ *:[v8i16] }:$c), V128:{ *:[v8i16] }:$v2), (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v1, V128:{ *:[v8i16] }:$c)) - Complexity = 16 |
| 28421 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28422 | /* 57234*/ 0, /*End of Scope*/ |
| 28423 | /* 57235*/ 0, /*End of Scope*/ |
| 28424 | /* 57236*/ /*Scope*/ 17|128,2/*273*/, /*->57511*/ |
| 28425 | /* 57238*/ OPC_RecordChild0, // #0 = $v2 |
| 28426 | /* 57239*/ OPC_Scope, 96, /*->57337*/ // 2 children in Scope |
| 28427 | /* 57241*/ OPC_MoveChild1, |
| 28428 | /* 57242*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28429 | /* 57245*/ OPC_Scope, 44, /*->57291*/ // 2 children in Scope |
| 28430 | /* 57247*/ OPC_RecordChild0, // #1 = $c |
| 28431 | /* 57248*/ OPC_MoveChild1, |
| 28432 | /* 57249*/ OPC_CheckImmAllOnesV, |
| 28433 | /* 57250*/ OPC_MoveParent, |
| 28434 | /* 57251*/ OPC_MoveParent, |
| 28435 | /* 57252*/ OPC_MoveParent, |
| 28436 | /* 57253*/ OPC_MoveChild1, |
| 28437 | /* 57254*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28438 | /* 57257*/ OPC_Scope, 15, /*->57274*/ // 2 children in Scope |
| 28439 | /* 57259*/ OPC_CheckChild0Same, 1, |
| 28440 | /* 57261*/ OPC_RecordChild1, // #2 = $v1 |
| 28441 | /* 57262*/ OPC_MoveParent, |
| 28442 | /* 57263*/ OPC_CheckType, MVT::v8i16, |
| 28443 | /* 57265*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28444 | MVT::v8i16, 3/*#Ops*/, 2, 0, 1, |
| 28445 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v2, (xor:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, immAllOnesV:{ *:[v8i16] })), (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, V128:{ *:[v8i16] }:$v1)) - Complexity = 16 |
| 28446 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28447 | /* 57274*/ /*Scope*/ 15, /*->57290*/ |
| 28448 | /* 57275*/ OPC_RecordChild0, // #2 = $v1 |
| 28449 | /* 57276*/ OPC_CheckChild1Same, 1, |
| 28450 | /* 57278*/ OPC_MoveParent, |
| 28451 | /* 57279*/ OPC_CheckType, MVT::v8i16, |
| 28452 | /* 57281*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28453 | MVT::v8i16, 3/*#Ops*/, 2, 0, 1, |
| 28454 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v2, (xor:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, immAllOnesV:{ *:[v8i16] })), (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v1, V128:{ *:[v8i16] }:$c)) - Complexity = 16 |
| 28455 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28456 | /* 57290*/ 0, /*End of Scope*/ |
| 28457 | /* 57291*/ /*Scope*/ 44, /*->57336*/ |
| 28458 | /* 57292*/ OPC_MoveChild0, |
| 28459 | /* 57293*/ OPC_CheckImmAllOnesV, |
| 28460 | /* 57294*/ OPC_MoveParent, |
| 28461 | /* 57295*/ OPC_RecordChild1, // #1 = $c |
| 28462 | /* 57296*/ OPC_MoveParent, |
| 28463 | /* 57297*/ OPC_MoveParent, |
| 28464 | /* 57298*/ OPC_MoveChild1, |
| 28465 | /* 57299*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28466 | /* 57302*/ OPC_Scope, 15, /*->57319*/ // 2 children in Scope |
| 28467 | /* 57304*/ OPC_CheckChild0Same, 1, |
| 28468 | /* 57306*/ OPC_RecordChild1, // #2 = $v1 |
| 28469 | /* 57307*/ OPC_MoveParent, |
| 28470 | /* 57308*/ OPC_CheckType, MVT::v8i16, |
| 28471 | /* 57310*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28472 | MVT::v8i16, 3/*#Ops*/, 2, 0, 1, |
| 28473 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v2, (xor:{ *:[v8i16] } immAllOnesV:{ *:[v8i16] }, V128:{ *:[v8i16] }:$c)), (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, V128:{ *:[v8i16] }:$v1)) - Complexity = 16 |
| 28474 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28475 | /* 57319*/ /*Scope*/ 15, /*->57335*/ |
| 28476 | /* 57320*/ OPC_RecordChild0, // #2 = $v1 |
| 28477 | /* 57321*/ OPC_CheckChild1Same, 1, |
| 28478 | /* 57323*/ OPC_MoveParent, |
| 28479 | /* 57324*/ OPC_CheckType, MVT::v8i16, |
| 28480 | /* 57326*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28481 | MVT::v8i16, 3/*#Ops*/, 2, 0, 1, |
| 28482 | // Src: (or:{ *:[v8i16] } (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v2, (xor:{ *:[v8i16] } immAllOnesV:{ *:[v8i16] }, V128:{ *:[v8i16] }:$c)), (and:{ *:[v8i16] } V128:{ *:[v8i16] }:$v1, V128:{ *:[v8i16] }:$c)) - Complexity = 16 |
| 28483 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 28484 | /* 57335*/ 0, /*End of Scope*/ |
| 28485 | /* 57336*/ 0, /*End of Scope*/ |
| 28486 | /* 57337*/ /*Scope*/ 43|128,1/*171*/, /*->57510*/ |
| 28487 | /* 57339*/ OPC_RecordChild1, // #1 = $v1 |
| 28488 | /* 57340*/ OPC_MoveParent, |
| 28489 | /* 57341*/ OPC_MoveChild1, |
| 28490 | /* 57342*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28491 | /* 57345*/ OPC_Scope, 23, /*->57370*/ // 4 children in Scope |
| 28492 | /* 57347*/ OPC_MoveChild0, |
| 28493 | /* 57348*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28494 | /* 57351*/ OPC_MoveChild0, |
| 28495 | /* 57352*/ OPC_CheckImmAllOnesV, |
| 28496 | /* 57353*/ OPC_MoveParent, |
| 28497 | /* 57354*/ OPC_CheckChild1Same, 0, |
| 28498 | /* 57356*/ OPC_MoveParent, |
| 28499 | /* 57357*/ OPC_RecordChild1, // #2 = $v2 |
| 28500 | /* 57358*/ OPC_MoveParent, |
| 28501 | /* 57359*/ OPC_CheckType, MVT::v4i32, |
| 28502 | /* 57361*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28503 | MVT::v4i32, 3/*#Ops*/, 1, 2, 0, |
| 28504 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, V128:{ *:[v4i32] }:$v1), (and:{ *:[v4i32] } (xor:{ *:[v4i32] } immAllOnesV:{ *:[v4i32] }, V128:{ *:[v4i32] }:$c), V128:{ *:[v4i32] }:$v2)) - Complexity = 16 |
| 28505 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28506 | /* 57370*/ /*Scope*/ 45, /*->57416*/ |
| 28507 | /* 57371*/ OPC_RecordChild0, // #2 = $v2 |
| 28508 | /* 57372*/ OPC_MoveChild1, |
| 28509 | /* 57373*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28510 | /* 57376*/ OPC_Scope, 18, /*->57396*/ // 2 children in Scope |
| 28511 | /* 57378*/ OPC_CheckChild0Same, 0, |
| 28512 | /* 57380*/ OPC_MoveChild1, |
| 28513 | /* 57381*/ OPC_CheckImmAllOnesV, |
| 28514 | /* 57382*/ OPC_MoveParent, |
| 28515 | /* 57383*/ OPC_MoveParent, |
| 28516 | /* 57384*/ OPC_MoveParent, |
| 28517 | /* 57385*/ OPC_CheckType, MVT::v4i32, |
| 28518 | /* 57387*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28519 | MVT::v4i32, 3/*#Ops*/, 1, 2, 0, |
| 28520 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, V128:{ *:[v4i32] }:$v1), (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v2, (xor:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, immAllOnesV:{ *:[v4i32] }))) - Complexity = 16 |
| 28521 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28522 | /* 57396*/ /*Scope*/ 18, /*->57415*/ |
| 28523 | /* 57397*/ OPC_MoveChild0, |
| 28524 | /* 57398*/ OPC_CheckImmAllOnesV, |
| 28525 | /* 57399*/ OPC_MoveParent, |
| 28526 | /* 57400*/ OPC_CheckChild1Same, 0, |
| 28527 | /* 57402*/ OPC_MoveParent, |
| 28528 | /* 57403*/ OPC_MoveParent, |
| 28529 | /* 57404*/ OPC_CheckType, MVT::v4i32, |
| 28530 | /* 57406*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28531 | MVT::v4i32, 3/*#Ops*/, 1, 2, 0, |
| 28532 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, V128:{ *:[v4i32] }:$v1), (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v2, (xor:{ *:[v4i32] } immAllOnesV:{ *:[v4i32] }, V128:{ *:[v4i32] }:$c))) - Complexity = 16 |
| 28533 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28534 | /* 57415*/ 0, /*End of Scope*/ |
| 28535 | /* 57416*/ /*Scope*/ 46, /*->57463*/ |
| 28536 | /* 57417*/ OPC_MoveChild0, |
| 28537 | /* 57418*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28538 | /* 57421*/ OPC_Scope, 19, /*->57442*/ // 2 children in Scope |
| 28539 | /* 57423*/ OPC_CheckChild0Same, 1, |
| 28540 | /* 57425*/ OPC_MoveChild1, |
| 28541 | /* 57426*/ OPC_CheckImmAllOnesV, |
| 28542 | /* 57427*/ OPC_MoveParent, |
| 28543 | /* 57428*/ OPC_MoveParent, |
| 28544 | /* 57429*/ OPC_RecordChild1, // #2 = $v2 |
| 28545 | /* 57430*/ OPC_MoveParent, |
| 28546 | /* 57431*/ OPC_CheckType, MVT::v4i32, |
| 28547 | /* 57433*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28548 | MVT::v4i32, 3/*#Ops*/, 0, 2, 1, |
| 28549 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v1, V128:{ *:[v4i32] }:$c), (and:{ *:[v4i32] } (xor:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, immAllOnesV:{ *:[v4i32] }), V128:{ *:[v4i32] }:$v2)) - Complexity = 16 |
| 28550 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28551 | /* 57442*/ /*Scope*/ 19, /*->57462*/ |
| 28552 | /* 57443*/ OPC_MoveChild0, |
| 28553 | /* 57444*/ OPC_CheckImmAllOnesV, |
| 28554 | /* 57445*/ OPC_MoveParent, |
| 28555 | /* 57446*/ OPC_CheckChild1Same, 1, |
| 28556 | /* 57448*/ OPC_MoveParent, |
| 28557 | /* 57449*/ OPC_RecordChild1, // #2 = $v2 |
| 28558 | /* 57450*/ OPC_MoveParent, |
| 28559 | /* 57451*/ OPC_CheckType, MVT::v4i32, |
| 28560 | /* 57453*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28561 | MVT::v4i32, 3/*#Ops*/, 0, 2, 1, |
| 28562 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v1, V128:{ *:[v4i32] }:$c), (and:{ *:[v4i32] } (xor:{ *:[v4i32] } immAllOnesV:{ *:[v4i32] }, V128:{ *:[v4i32] }:$c), V128:{ *:[v4i32] }:$v2)) - Complexity = 16 |
| 28563 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28564 | /* 57462*/ 0, /*End of Scope*/ |
| 28565 | /* 57463*/ /*Scope*/ 45, /*->57509*/ |
| 28566 | /* 57464*/ OPC_RecordChild0, // #2 = $v2 |
| 28567 | /* 57465*/ OPC_MoveChild1, |
| 28568 | /* 57466*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28569 | /* 57469*/ OPC_Scope, 18, /*->57489*/ // 2 children in Scope |
| 28570 | /* 57471*/ OPC_CheckChild0Same, 1, |
| 28571 | /* 57473*/ OPC_MoveChild1, |
| 28572 | /* 57474*/ OPC_CheckImmAllOnesV, |
| 28573 | /* 57475*/ OPC_MoveParent, |
| 28574 | /* 57476*/ OPC_MoveParent, |
| 28575 | /* 57477*/ OPC_MoveParent, |
| 28576 | /* 57478*/ OPC_CheckType, MVT::v4i32, |
| 28577 | /* 57480*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28578 | MVT::v4i32, 3/*#Ops*/, 0, 2, 1, |
| 28579 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v1, V128:{ *:[v4i32] }:$c), (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v2, (xor:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, immAllOnesV:{ *:[v4i32] }))) - Complexity = 16 |
| 28580 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28581 | /* 57489*/ /*Scope*/ 18, /*->57508*/ |
| 28582 | /* 57490*/ OPC_MoveChild0, |
| 28583 | /* 57491*/ OPC_CheckImmAllOnesV, |
| 28584 | /* 57492*/ OPC_MoveParent, |
| 28585 | /* 57493*/ OPC_CheckChild1Same, 1, |
| 28586 | /* 57495*/ OPC_MoveParent, |
| 28587 | /* 57496*/ OPC_MoveParent, |
| 28588 | /* 57497*/ OPC_CheckType, MVT::v4i32, |
| 28589 | /* 57499*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28590 | MVT::v4i32, 3/*#Ops*/, 0, 2, 1, |
| 28591 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v1, V128:{ *:[v4i32] }:$c), (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v2, (xor:{ *:[v4i32] } immAllOnesV:{ *:[v4i32] }, V128:{ *:[v4i32] }:$c))) - Complexity = 16 |
| 28592 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28593 | /* 57508*/ 0, /*End of Scope*/ |
| 28594 | /* 57509*/ 0, /*End of Scope*/ |
| 28595 | /* 57510*/ 0, /*End of Scope*/ |
| 28596 | /* 57511*/ /*Scope*/ 98, /*->57610*/ |
| 28597 | /* 57512*/ OPC_MoveChild0, |
| 28598 | /* 57513*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28599 | /* 57516*/ OPC_Scope, 45, /*->57563*/ // 2 children in Scope |
| 28600 | /* 57518*/ OPC_RecordChild0, // #0 = $c |
| 28601 | /* 57519*/ OPC_MoveChild1, |
| 28602 | /* 57520*/ OPC_CheckImmAllOnesV, |
| 28603 | /* 57521*/ OPC_MoveParent, |
| 28604 | /* 57522*/ OPC_MoveParent, |
| 28605 | /* 57523*/ OPC_RecordChild1, // #1 = $v2 |
| 28606 | /* 57524*/ OPC_MoveParent, |
| 28607 | /* 57525*/ OPC_MoveChild1, |
| 28608 | /* 57526*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28609 | /* 57529*/ OPC_Scope, 15, /*->57546*/ // 2 children in Scope |
| 28610 | /* 57531*/ OPC_CheckChild0Same, 0, |
| 28611 | /* 57533*/ OPC_RecordChild1, // #2 = $v1 |
| 28612 | /* 57534*/ OPC_MoveParent, |
| 28613 | /* 57535*/ OPC_CheckType, MVT::v4i32, |
| 28614 | /* 57537*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28615 | MVT::v4i32, 3/*#Ops*/, 2, 1, 0, |
| 28616 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } (xor:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, immAllOnesV:{ *:[v4i32] }), V128:{ *:[v4i32] }:$v2), (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, V128:{ *:[v4i32] }:$v1)) - Complexity = 16 |
| 28617 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28618 | /* 57546*/ /*Scope*/ 15, /*->57562*/ |
| 28619 | /* 57547*/ OPC_RecordChild0, // #2 = $v1 |
| 28620 | /* 57548*/ OPC_CheckChild1Same, 0, |
| 28621 | /* 57550*/ OPC_MoveParent, |
| 28622 | /* 57551*/ OPC_CheckType, MVT::v4i32, |
| 28623 | /* 57553*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28624 | MVT::v4i32, 3/*#Ops*/, 2, 1, 0, |
| 28625 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } (xor:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, immAllOnesV:{ *:[v4i32] }), V128:{ *:[v4i32] }:$v2), (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v1, V128:{ *:[v4i32] }:$c)) - Complexity = 16 |
| 28626 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28627 | /* 57562*/ 0, /*End of Scope*/ |
| 28628 | /* 57563*/ /*Scope*/ 45, /*->57609*/ |
| 28629 | /* 57564*/ OPC_MoveChild0, |
| 28630 | /* 57565*/ OPC_CheckImmAllOnesV, |
| 28631 | /* 57566*/ OPC_MoveParent, |
| 28632 | /* 57567*/ OPC_RecordChild1, // #0 = $c |
| 28633 | /* 57568*/ OPC_MoveParent, |
| 28634 | /* 57569*/ OPC_RecordChild1, // #1 = $v2 |
| 28635 | /* 57570*/ OPC_MoveParent, |
| 28636 | /* 57571*/ OPC_MoveChild1, |
| 28637 | /* 57572*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28638 | /* 57575*/ OPC_Scope, 15, /*->57592*/ // 2 children in Scope |
| 28639 | /* 57577*/ OPC_CheckChild0Same, 0, |
| 28640 | /* 57579*/ OPC_RecordChild1, // #2 = $v1 |
| 28641 | /* 57580*/ OPC_MoveParent, |
| 28642 | /* 57581*/ OPC_CheckType, MVT::v4i32, |
| 28643 | /* 57583*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28644 | MVT::v4i32, 3/*#Ops*/, 2, 1, 0, |
| 28645 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } (xor:{ *:[v4i32] } immAllOnesV:{ *:[v4i32] }, V128:{ *:[v4i32] }:$c), V128:{ *:[v4i32] }:$v2), (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, V128:{ *:[v4i32] }:$v1)) - Complexity = 16 |
| 28646 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28647 | /* 57592*/ /*Scope*/ 15, /*->57608*/ |
| 28648 | /* 57593*/ OPC_RecordChild0, // #2 = $v1 |
| 28649 | /* 57594*/ OPC_CheckChild1Same, 0, |
| 28650 | /* 57596*/ OPC_MoveParent, |
| 28651 | /* 57597*/ OPC_CheckType, MVT::v4i32, |
| 28652 | /* 57599*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28653 | MVT::v4i32, 3/*#Ops*/, 2, 1, 0, |
| 28654 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } (xor:{ *:[v4i32] } immAllOnesV:{ *:[v4i32] }, V128:{ *:[v4i32] }:$c), V128:{ *:[v4i32] }:$v2), (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v1, V128:{ *:[v4i32] }:$c)) - Complexity = 16 |
| 28655 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28656 | /* 57608*/ 0, /*End of Scope*/ |
| 28657 | /* 57609*/ 0, /*End of Scope*/ |
| 28658 | /* 57610*/ /*Scope*/ 17|128,2/*273*/, /*->57885*/ |
| 28659 | /* 57612*/ OPC_RecordChild0, // #0 = $v2 |
| 28660 | /* 57613*/ OPC_Scope, 96, /*->57711*/ // 2 children in Scope |
| 28661 | /* 57615*/ OPC_MoveChild1, |
| 28662 | /* 57616*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28663 | /* 57619*/ OPC_Scope, 44, /*->57665*/ // 2 children in Scope |
| 28664 | /* 57621*/ OPC_RecordChild0, // #1 = $c |
| 28665 | /* 57622*/ OPC_MoveChild1, |
| 28666 | /* 57623*/ OPC_CheckImmAllOnesV, |
| 28667 | /* 57624*/ OPC_MoveParent, |
| 28668 | /* 57625*/ OPC_MoveParent, |
| 28669 | /* 57626*/ OPC_MoveParent, |
| 28670 | /* 57627*/ OPC_MoveChild1, |
| 28671 | /* 57628*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28672 | /* 57631*/ OPC_Scope, 15, /*->57648*/ // 2 children in Scope |
| 28673 | /* 57633*/ OPC_CheckChild0Same, 1, |
| 28674 | /* 57635*/ OPC_RecordChild1, // #2 = $v1 |
| 28675 | /* 57636*/ OPC_MoveParent, |
| 28676 | /* 57637*/ OPC_CheckType, MVT::v4i32, |
| 28677 | /* 57639*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28678 | MVT::v4i32, 3/*#Ops*/, 2, 0, 1, |
| 28679 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v2, (xor:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, immAllOnesV:{ *:[v4i32] })), (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, V128:{ *:[v4i32] }:$v1)) - Complexity = 16 |
| 28680 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28681 | /* 57648*/ /*Scope*/ 15, /*->57664*/ |
| 28682 | /* 57649*/ OPC_RecordChild0, // #2 = $v1 |
| 28683 | /* 57650*/ OPC_CheckChild1Same, 1, |
| 28684 | /* 57652*/ OPC_MoveParent, |
| 28685 | /* 57653*/ OPC_CheckType, MVT::v4i32, |
| 28686 | /* 57655*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28687 | MVT::v4i32, 3/*#Ops*/, 2, 0, 1, |
| 28688 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v2, (xor:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, immAllOnesV:{ *:[v4i32] })), (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v1, V128:{ *:[v4i32] }:$c)) - Complexity = 16 |
| 28689 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28690 | /* 57664*/ 0, /*End of Scope*/ |
| 28691 | /* 57665*/ /*Scope*/ 44, /*->57710*/ |
| 28692 | /* 57666*/ OPC_MoveChild0, |
| 28693 | /* 57667*/ OPC_CheckImmAllOnesV, |
| 28694 | /* 57668*/ OPC_MoveParent, |
| 28695 | /* 57669*/ OPC_RecordChild1, // #1 = $c |
| 28696 | /* 57670*/ OPC_MoveParent, |
| 28697 | /* 57671*/ OPC_MoveParent, |
| 28698 | /* 57672*/ OPC_MoveChild1, |
| 28699 | /* 57673*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28700 | /* 57676*/ OPC_Scope, 15, /*->57693*/ // 2 children in Scope |
| 28701 | /* 57678*/ OPC_CheckChild0Same, 1, |
| 28702 | /* 57680*/ OPC_RecordChild1, // #2 = $v1 |
| 28703 | /* 57681*/ OPC_MoveParent, |
| 28704 | /* 57682*/ OPC_CheckType, MVT::v4i32, |
| 28705 | /* 57684*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28706 | MVT::v4i32, 3/*#Ops*/, 2, 0, 1, |
| 28707 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v2, (xor:{ *:[v4i32] } immAllOnesV:{ *:[v4i32] }, V128:{ *:[v4i32] }:$c)), (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, V128:{ *:[v4i32] }:$v1)) - Complexity = 16 |
| 28708 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28709 | /* 57693*/ /*Scope*/ 15, /*->57709*/ |
| 28710 | /* 57694*/ OPC_RecordChild0, // #2 = $v1 |
| 28711 | /* 57695*/ OPC_CheckChild1Same, 1, |
| 28712 | /* 57697*/ OPC_MoveParent, |
| 28713 | /* 57698*/ OPC_CheckType, MVT::v4i32, |
| 28714 | /* 57700*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28715 | MVT::v4i32, 3/*#Ops*/, 2, 0, 1, |
| 28716 | // Src: (or:{ *:[v4i32] } (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v2, (xor:{ *:[v4i32] } immAllOnesV:{ *:[v4i32] }, V128:{ *:[v4i32] }:$c)), (and:{ *:[v4i32] } V128:{ *:[v4i32] }:$v1, V128:{ *:[v4i32] }:$c)) - Complexity = 16 |
| 28717 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 28718 | /* 57709*/ 0, /*End of Scope*/ |
| 28719 | /* 57710*/ 0, /*End of Scope*/ |
| 28720 | /* 57711*/ /*Scope*/ 43|128,1/*171*/, /*->57884*/ |
| 28721 | /* 57713*/ OPC_RecordChild1, // #1 = $v1 |
| 28722 | /* 57714*/ OPC_MoveParent, |
| 28723 | /* 57715*/ OPC_MoveChild1, |
| 28724 | /* 57716*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28725 | /* 57719*/ OPC_Scope, 23, /*->57744*/ // 4 children in Scope |
| 28726 | /* 57721*/ OPC_MoveChild0, |
| 28727 | /* 57722*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28728 | /* 57725*/ OPC_MoveChild0, |
| 28729 | /* 57726*/ OPC_CheckImmAllOnesV, |
| 28730 | /* 57727*/ OPC_MoveParent, |
| 28731 | /* 57728*/ OPC_CheckChild1Same, 0, |
| 28732 | /* 57730*/ OPC_MoveParent, |
| 28733 | /* 57731*/ OPC_RecordChild1, // #2 = $v2 |
| 28734 | /* 57732*/ OPC_MoveParent, |
| 28735 | /* 57733*/ OPC_CheckType, MVT::v2i64, |
| 28736 | /* 57735*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28737 | MVT::v2i64, 3/*#Ops*/, 1, 2, 0, |
| 28738 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, V128:{ *:[v2i64] }:$v1), (and:{ *:[v2i64] } (xor:{ *:[v2i64] } immAllOnesV:{ *:[v2i64] }, V128:{ *:[v2i64] }:$c), V128:{ *:[v2i64] }:$v2)) - Complexity = 16 |
| 28739 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28740 | /* 57744*/ /*Scope*/ 45, /*->57790*/ |
| 28741 | /* 57745*/ OPC_RecordChild0, // #2 = $v2 |
| 28742 | /* 57746*/ OPC_MoveChild1, |
| 28743 | /* 57747*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28744 | /* 57750*/ OPC_Scope, 18, /*->57770*/ // 2 children in Scope |
| 28745 | /* 57752*/ OPC_CheckChild0Same, 0, |
| 28746 | /* 57754*/ OPC_MoveChild1, |
| 28747 | /* 57755*/ OPC_CheckImmAllOnesV, |
| 28748 | /* 57756*/ OPC_MoveParent, |
| 28749 | /* 57757*/ OPC_MoveParent, |
| 28750 | /* 57758*/ OPC_MoveParent, |
| 28751 | /* 57759*/ OPC_CheckType, MVT::v2i64, |
| 28752 | /* 57761*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28753 | MVT::v2i64, 3/*#Ops*/, 1, 2, 0, |
| 28754 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, V128:{ *:[v2i64] }:$v1), (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v2, (xor:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, immAllOnesV:{ *:[v2i64] }))) - Complexity = 16 |
| 28755 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28756 | /* 57770*/ /*Scope*/ 18, /*->57789*/ |
| 28757 | /* 57771*/ OPC_MoveChild0, |
| 28758 | /* 57772*/ OPC_CheckImmAllOnesV, |
| 28759 | /* 57773*/ OPC_MoveParent, |
| 28760 | /* 57774*/ OPC_CheckChild1Same, 0, |
| 28761 | /* 57776*/ OPC_MoveParent, |
| 28762 | /* 57777*/ OPC_MoveParent, |
| 28763 | /* 57778*/ OPC_CheckType, MVT::v2i64, |
| 28764 | /* 57780*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28765 | MVT::v2i64, 3/*#Ops*/, 1, 2, 0, |
| 28766 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, V128:{ *:[v2i64] }:$v1), (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v2, (xor:{ *:[v2i64] } immAllOnesV:{ *:[v2i64] }, V128:{ *:[v2i64] }:$c))) - Complexity = 16 |
| 28767 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28768 | /* 57789*/ 0, /*End of Scope*/ |
| 28769 | /* 57790*/ /*Scope*/ 46, /*->57837*/ |
| 28770 | /* 57791*/ OPC_MoveChild0, |
| 28771 | /* 57792*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28772 | /* 57795*/ OPC_Scope, 19, /*->57816*/ // 2 children in Scope |
| 28773 | /* 57797*/ OPC_CheckChild0Same, 1, |
| 28774 | /* 57799*/ OPC_MoveChild1, |
| 28775 | /* 57800*/ OPC_CheckImmAllOnesV, |
| 28776 | /* 57801*/ OPC_MoveParent, |
| 28777 | /* 57802*/ OPC_MoveParent, |
| 28778 | /* 57803*/ OPC_RecordChild1, // #2 = $v2 |
| 28779 | /* 57804*/ OPC_MoveParent, |
| 28780 | /* 57805*/ OPC_CheckType, MVT::v2i64, |
| 28781 | /* 57807*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28782 | MVT::v2i64, 3/*#Ops*/, 0, 2, 1, |
| 28783 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v1, V128:{ *:[v2i64] }:$c), (and:{ *:[v2i64] } (xor:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, immAllOnesV:{ *:[v2i64] }), V128:{ *:[v2i64] }:$v2)) - Complexity = 16 |
| 28784 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28785 | /* 57816*/ /*Scope*/ 19, /*->57836*/ |
| 28786 | /* 57817*/ OPC_MoveChild0, |
| 28787 | /* 57818*/ OPC_CheckImmAllOnesV, |
| 28788 | /* 57819*/ OPC_MoveParent, |
| 28789 | /* 57820*/ OPC_CheckChild1Same, 1, |
| 28790 | /* 57822*/ OPC_MoveParent, |
| 28791 | /* 57823*/ OPC_RecordChild1, // #2 = $v2 |
| 28792 | /* 57824*/ OPC_MoveParent, |
| 28793 | /* 57825*/ OPC_CheckType, MVT::v2i64, |
| 28794 | /* 57827*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28795 | MVT::v2i64, 3/*#Ops*/, 0, 2, 1, |
| 28796 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v1, V128:{ *:[v2i64] }:$c), (and:{ *:[v2i64] } (xor:{ *:[v2i64] } immAllOnesV:{ *:[v2i64] }, V128:{ *:[v2i64] }:$c), V128:{ *:[v2i64] }:$v2)) - Complexity = 16 |
| 28797 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28798 | /* 57836*/ 0, /*End of Scope*/ |
| 28799 | /* 57837*/ /*Scope*/ 45, /*->57883*/ |
| 28800 | /* 57838*/ OPC_RecordChild0, // #2 = $v2 |
| 28801 | /* 57839*/ OPC_MoveChild1, |
| 28802 | /* 57840*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28803 | /* 57843*/ OPC_Scope, 18, /*->57863*/ // 2 children in Scope |
| 28804 | /* 57845*/ OPC_CheckChild0Same, 1, |
| 28805 | /* 57847*/ OPC_MoveChild1, |
| 28806 | /* 57848*/ OPC_CheckImmAllOnesV, |
| 28807 | /* 57849*/ OPC_MoveParent, |
| 28808 | /* 57850*/ OPC_MoveParent, |
| 28809 | /* 57851*/ OPC_MoveParent, |
| 28810 | /* 57852*/ OPC_CheckType, MVT::v2i64, |
| 28811 | /* 57854*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28812 | MVT::v2i64, 3/*#Ops*/, 0, 2, 1, |
| 28813 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v1, V128:{ *:[v2i64] }:$c), (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v2, (xor:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, immAllOnesV:{ *:[v2i64] }))) - Complexity = 16 |
| 28814 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28815 | /* 57863*/ /*Scope*/ 18, /*->57882*/ |
| 28816 | /* 57864*/ OPC_MoveChild0, |
| 28817 | /* 57865*/ OPC_CheckImmAllOnesV, |
| 28818 | /* 57866*/ OPC_MoveParent, |
| 28819 | /* 57867*/ OPC_CheckChild1Same, 1, |
| 28820 | /* 57869*/ OPC_MoveParent, |
| 28821 | /* 57870*/ OPC_MoveParent, |
| 28822 | /* 57871*/ OPC_CheckType, MVT::v2i64, |
| 28823 | /* 57873*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28824 | MVT::v2i64, 3/*#Ops*/, 0, 2, 1, |
| 28825 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v1, V128:{ *:[v2i64] }:$c), (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v2, (xor:{ *:[v2i64] } immAllOnesV:{ *:[v2i64] }, V128:{ *:[v2i64] }:$c))) - Complexity = 16 |
| 28826 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28827 | /* 57882*/ 0, /*End of Scope*/ |
| 28828 | /* 57883*/ 0, /*End of Scope*/ |
| 28829 | /* 57884*/ 0, /*End of Scope*/ |
| 28830 | /* 57885*/ /*Scope*/ 98, /*->57984*/ |
| 28831 | /* 57886*/ OPC_MoveChild0, |
| 28832 | /* 57887*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28833 | /* 57890*/ OPC_Scope, 45, /*->57937*/ // 2 children in Scope |
| 28834 | /* 57892*/ OPC_RecordChild0, // #0 = $c |
| 28835 | /* 57893*/ OPC_MoveChild1, |
| 28836 | /* 57894*/ OPC_CheckImmAllOnesV, |
| 28837 | /* 57895*/ OPC_MoveParent, |
| 28838 | /* 57896*/ OPC_MoveParent, |
| 28839 | /* 57897*/ OPC_RecordChild1, // #1 = $v2 |
| 28840 | /* 57898*/ OPC_MoveParent, |
| 28841 | /* 57899*/ OPC_MoveChild1, |
| 28842 | /* 57900*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28843 | /* 57903*/ OPC_Scope, 15, /*->57920*/ // 2 children in Scope |
| 28844 | /* 57905*/ OPC_CheckChild0Same, 0, |
| 28845 | /* 57907*/ OPC_RecordChild1, // #2 = $v1 |
| 28846 | /* 57908*/ OPC_MoveParent, |
| 28847 | /* 57909*/ OPC_CheckType, MVT::v2i64, |
| 28848 | /* 57911*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28849 | MVT::v2i64, 3/*#Ops*/, 2, 1, 0, |
| 28850 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } (xor:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, immAllOnesV:{ *:[v2i64] }), V128:{ *:[v2i64] }:$v2), (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, V128:{ *:[v2i64] }:$v1)) - Complexity = 16 |
| 28851 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28852 | /* 57920*/ /*Scope*/ 15, /*->57936*/ |
| 28853 | /* 57921*/ OPC_RecordChild0, // #2 = $v1 |
| 28854 | /* 57922*/ OPC_CheckChild1Same, 0, |
| 28855 | /* 57924*/ OPC_MoveParent, |
| 28856 | /* 57925*/ OPC_CheckType, MVT::v2i64, |
| 28857 | /* 57927*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28858 | MVT::v2i64, 3/*#Ops*/, 2, 1, 0, |
| 28859 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } (xor:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, immAllOnesV:{ *:[v2i64] }), V128:{ *:[v2i64] }:$v2), (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v1, V128:{ *:[v2i64] }:$c)) - Complexity = 16 |
| 28860 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28861 | /* 57936*/ 0, /*End of Scope*/ |
| 28862 | /* 57937*/ /*Scope*/ 45, /*->57983*/ |
| 28863 | /* 57938*/ OPC_MoveChild0, |
| 28864 | /* 57939*/ OPC_CheckImmAllOnesV, |
| 28865 | /* 57940*/ OPC_MoveParent, |
| 28866 | /* 57941*/ OPC_RecordChild1, // #0 = $c |
| 28867 | /* 57942*/ OPC_MoveParent, |
| 28868 | /* 57943*/ OPC_RecordChild1, // #1 = $v2 |
| 28869 | /* 57944*/ OPC_MoveParent, |
| 28870 | /* 57945*/ OPC_MoveChild1, |
| 28871 | /* 57946*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28872 | /* 57949*/ OPC_Scope, 15, /*->57966*/ // 2 children in Scope |
| 28873 | /* 57951*/ OPC_CheckChild0Same, 0, |
| 28874 | /* 57953*/ OPC_RecordChild1, // #2 = $v1 |
| 28875 | /* 57954*/ OPC_MoveParent, |
| 28876 | /* 57955*/ OPC_CheckType, MVT::v2i64, |
| 28877 | /* 57957*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28878 | MVT::v2i64, 3/*#Ops*/, 2, 1, 0, |
| 28879 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } (xor:{ *:[v2i64] } immAllOnesV:{ *:[v2i64] }, V128:{ *:[v2i64] }:$c), V128:{ *:[v2i64] }:$v2), (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, V128:{ *:[v2i64] }:$v1)) - Complexity = 16 |
| 28880 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28881 | /* 57966*/ /*Scope*/ 15, /*->57982*/ |
| 28882 | /* 57967*/ OPC_RecordChild0, // #2 = $v1 |
| 28883 | /* 57968*/ OPC_CheckChild1Same, 0, |
| 28884 | /* 57970*/ OPC_MoveParent, |
| 28885 | /* 57971*/ OPC_CheckType, MVT::v2i64, |
| 28886 | /* 57973*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28887 | MVT::v2i64, 3/*#Ops*/, 2, 1, 0, |
| 28888 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } (xor:{ *:[v2i64] } immAllOnesV:{ *:[v2i64] }, V128:{ *:[v2i64] }:$c), V128:{ *:[v2i64] }:$v2), (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v1, V128:{ *:[v2i64] }:$c)) - Complexity = 16 |
| 28889 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28890 | /* 57982*/ 0, /*End of Scope*/ |
| 28891 | /* 57983*/ 0, /*End of Scope*/ |
| 28892 | /* 57984*/ /*Scope*/ 97, /*->58082*/ |
| 28893 | /* 57985*/ OPC_RecordChild0, // #0 = $v2 |
| 28894 | /* 57986*/ OPC_MoveChild1, |
| 28895 | /* 57987*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| 28896 | /* 57990*/ OPC_Scope, 44, /*->58036*/ // 2 children in Scope |
| 28897 | /* 57992*/ OPC_RecordChild0, // #1 = $c |
| 28898 | /* 57993*/ OPC_MoveChild1, |
| 28899 | /* 57994*/ OPC_CheckImmAllOnesV, |
| 28900 | /* 57995*/ OPC_MoveParent, |
| 28901 | /* 57996*/ OPC_MoveParent, |
| 28902 | /* 57997*/ OPC_MoveParent, |
| 28903 | /* 57998*/ OPC_MoveChild1, |
| 28904 | /* 57999*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28905 | /* 58002*/ OPC_Scope, 15, /*->58019*/ // 2 children in Scope |
| 28906 | /* 58004*/ OPC_CheckChild0Same, 1, |
| 28907 | /* 58006*/ OPC_RecordChild1, // #2 = $v1 |
| 28908 | /* 58007*/ OPC_MoveParent, |
| 28909 | /* 58008*/ OPC_CheckType, MVT::v2i64, |
| 28910 | /* 58010*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28911 | MVT::v2i64, 3/*#Ops*/, 2, 0, 1, |
| 28912 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v2, (xor:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, immAllOnesV:{ *:[v2i64] })), (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, V128:{ *:[v2i64] }:$v1)) - Complexity = 16 |
| 28913 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28914 | /* 58019*/ /*Scope*/ 15, /*->58035*/ |
| 28915 | /* 58020*/ OPC_RecordChild0, // #2 = $v1 |
| 28916 | /* 58021*/ OPC_CheckChild1Same, 1, |
| 28917 | /* 58023*/ OPC_MoveParent, |
| 28918 | /* 58024*/ OPC_CheckType, MVT::v2i64, |
| 28919 | /* 58026*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28920 | MVT::v2i64, 3/*#Ops*/, 2, 0, 1, |
| 28921 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v2, (xor:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, immAllOnesV:{ *:[v2i64] })), (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v1, V128:{ *:[v2i64] }:$c)) - Complexity = 16 |
| 28922 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28923 | /* 58035*/ 0, /*End of Scope*/ |
| 28924 | /* 58036*/ /*Scope*/ 44, /*->58081*/ |
| 28925 | /* 58037*/ OPC_MoveChild0, |
| 28926 | /* 58038*/ OPC_CheckImmAllOnesV, |
| 28927 | /* 58039*/ OPC_MoveParent, |
| 28928 | /* 58040*/ OPC_RecordChild1, // #1 = $c |
| 28929 | /* 58041*/ OPC_MoveParent, |
| 28930 | /* 58042*/ OPC_MoveParent, |
| 28931 | /* 58043*/ OPC_MoveChild1, |
| 28932 | /* 58044*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| 28933 | /* 58047*/ OPC_Scope, 15, /*->58064*/ // 2 children in Scope |
| 28934 | /* 58049*/ OPC_CheckChild0Same, 1, |
| 28935 | /* 58051*/ OPC_RecordChild1, // #2 = $v1 |
| 28936 | /* 58052*/ OPC_MoveParent, |
| 28937 | /* 58053*/ OPC_CheckType, MVT::v2i64, |
| 28938 | /* 58055*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28939 | MVT::v2i64, 3/*#Ops*/, 2, 0, 1, |
| 28940 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v2, (xor:{ *:[v2i64] } immAllOnesV:{ *:[v2i64] }, V128:{ *:[v2i64] }:$c)), (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, V128:{ *:[v2i64] }:$v1)) - Complexity = 16 |
| 28941 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28942 | /* 58064*/ /*Scope*/ 15, /*->58080*/ |
| 28943 | /* 58065*/ OPC_RecordChild0, // #2 = $v1 |
| 28944 | /* 58066*/ OPC_CheckChild1Same, 1, |
| 28945 | /* 58068*/ OPC_MoveParent, |
| 28946 | /* 58069*/ OPC_CheckType, MVT::v2i64, |
| 28947 | /* 58071*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 28948 | MVT::v2i64, 3/*#Ops*/, 2, 0, 1, |
| 28949 | // Src: (or:{ *:[v2i64] } (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v2, (xor:{ *:[v2i64] } immAllOnesV:{ *:[v2i64] }, V128:{ *:[v2i64] }:$c)), (and:{ *:[v2i64] } V128:{ *:[v2i64] }:$v1, V128:{ *:[v2i64] }:$c)) - Complexity = 16 |
| 28950 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 28951 | /* 58080*/ 0, /*End of Scope*/ |
| 28952 | /* 58081*/ 0, /*End of Scope*/ |
| 28953 | /* 58082*/ 0, /*End of Scope*/ |
| 28954 | /* 58083*/ /*Scope*/ 44, /*->58128*/ |
| 28955 | /* 58084*/ OPC_RecordChild0, // #0 = $lhs |
| 28956 | /* 58085*/ OPC_RecordChild1, // #1 = $rhs |
| 28957 | /* 58086*/ OPC_SwitchType /*4 cases */, 8, MVT::v16i8,// ->58097 |
| 28958 | /* 58089*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::OR), 0, |
| 28959 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 28960 | // Src: (or:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 3 |
| 28961 | // Dst: (OR:{ *:[v16i8] } ?:{ *:[v16i8] }:$lhs, ?:{ *:[v16i8] }:$rhs) |
| 28962 | /* 58097*/ /*SwitchType*/ 8, MVT::v8i16,// ->58107 |
| 28963 | /* 58099*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::OR), 0, |
| 28964 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 28965 | // Src: (or:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 28966 | // Dst: (OR:{ *:[v8i16] } ?:{ *:[v8i16] }:$lhs, ?:{ *:[v8i16] }:$rhs) |
| 28967 | /* 58107*/ /*SwitchType*/ 8, MVT::v4i32,// ->58117 |
| 28968 | /* 58109*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::OR), 0, |
| 28969 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 28970 | // Src: (or:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 3 |
| 28971 | // Dst: (OR:{ *:[v4i32] } ?:{ *:[v4i32] }:$lhs, ?:{ *:[v4i32] }:$rhs) |
| 28972 | /* 58117*/ /*SwitchType*/ 8, MVT::v2i64,// ->58127 |
| 28973 | /* 58119*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::OR), 0, |
| 28974 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 28975 | // Src: (or:{ *:[v2i64] } V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) - Complexity = 3 |
| 28976 | // Dst: (OR:{ *:[v2i64] } ?:{ *:[v2i64] }:$lhs, ?:{ *:[v2i64] }:$rhs) |
| 28977 | /* 58127*/ 0, // EndSwitchType |
| 28978 | /* 58128*/ 0, /*End of Scope*/ |
| 28979 | /* 58129*/ /*SwitchOpcode*/ 32|128,1/*160*/, TARGET_VAL(ISD::XOR),// ->58293 |
| 28980 | /* 58133*/ OPC_Scope, 69, /*->58204*/ // 3 children in Scope |
| 28981 | /* 58135*/ OPC_RecordChild0, // #0 = $lhs |
| 28982 | /* 58136*/ OPC_Scope, 23, /*->58161*/ // 2 children in Scope |
| 28983 | /* 58138*/ OPC_RecordChild1, // #1 = $rhs |
| 28984 | /* 58139*/ OPC_SwitchType /*2 cases */, 8, MVT::i32,// ->58150 |
| 28985 | /* 58142*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::XOR_I32), 0, |
| 28986 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 28987 | // Src: (xor:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 28988 | // Dst: (XOR_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 28989 | /* 58150*/ /*SwitchType*/ 8, MVT::i64,// ->58160 |
| 28990 | /* 58152*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::XOR_I64), 0, |
| 28991 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 28992 | // Src: (xor:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 28993 | // Dst: (XOR_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 28994 | /* 58160*/ 0, // EndSwitchType |
| 28995 | /* 58161*/ /*Scope*/ 41, /*->58203*/ |
| 28996 | /* 58162*/ OPC_MoveChild1, |
| 28997 | /* 58163*/ OPC_CheckImmAllOnesV, |
| 28998 | /* 58164*/ OPC_MoveParent, |
| 28999 | /* 58165*/ OPC_SwitchType /*4 cases */, 7, MVT::v16i8,// ->58175 |
| 29000 | /* 58168*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NOT), 0, |
| 29001 | MVT::v16i8, 1/*#Ops*/, 0, |
| 29002 | // Src: (xor:{ *:[v16i8] } V128:{ *:[v16i8] }:$v, immAllOnesV:{ *:[v16i8] }) - Complexity = 7 |
| 29003 | // Dst: (NOT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v) |
| 29004 | /* 58175*/ /*SwitchType*/ 7, MVT::v8i16,// ->58184 |
| 29005 | /* 58177*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NOT), 0, |
| 29006 | MVT::v8i16, 1/*#Ops*/, 0, |
| 29007 | // Src: (xor:{ *:[v8i16] } V128:{ *:[v8i16] }:$v, immAllOnesV:{ *:[v8i16] }) - Complexity = 7 |
| 29008 | // Dst: (NOT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v) |
| 29009 | /* 58184*/ /*SwitchType*/ 7, MVT::v4i32,// ->58193 |
| 29010 | /* 58186*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NOT), 0, |
| 29011 | MVT::v4i32, 1/*#Ops*/, 0, |
| 29012 | // Src: (xor:{ *:[v4i32] } V128:{ *:[v4i32] }:$v, immAllOnesV:{ *:[v4i32] }) - Complexity = 7 |
| 29013 | // Dst: (NOT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v) |
| 29014 | /* 58193*/ /*SwitchType*/ 7, MVT::v2i64,// ->58202 |
| 29015 | /* 58195*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NOT), 0, |
| 29016 | MVT::v2i64, 1/*#Ops*/, 0, |
| 29017 | // Src: (xor:{ *:[v2i64] } V128:{ *:[v2i64] }:$v, immAllOnesV:{ *:[v2i64] }) - Complexity = 7 |
| 29018 | // Dst: (NOT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v) |
| 29019 | /* 58202*/ 0, // EndSwitchType |
| 29020 | /* 58203*/ 0, /*End of Scope*/ |
| 29021 | /* 58204*/ /*Scope*/ 42, /*->58247*/ |
| 29022 | /* 58205*/ OPC_MoveChild0, |
| 29023 | /* 58206*/ OPC_CheckImmAllOnesV, |
| 29024 | /* 58207*/ OPC_MoveParent, |
| 29025 | /* 58208*/ OPC_RecordChild1, // #0 = $v |
| 29026 | /* 58209*/ OPC_SwitchType /*4 cases */, 7, MVT::v16i8,// ->58219 |
| 29027 | /* 58212*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NOT), 0, |
| 29028 | MVT::v16i8, 1/*#Ops*/, 0, |
| 29029 | // Src: (xor:{ *:[v16i8] } immAllOnesV:{ *:[v16i8] }, V128:{ *:[v16i8] }:$v) - Complexity = 7 |
| 29030 | // Dst: (NOT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v) |
| 29031 | /* 58219*/ /*SwitchType*/ 7, MVT::v8i16,// ->58228 |
| 29032 | /* 58221*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NOT), 0, |
| 29033 | MVT::v8i16, 1/*#Ops*/, 0, |
| 29034 | // Src: (xor:{ *:[v8i16] } immAllOnesV:{ *:[v8i16] }, V128:{ *:[v8i16] }:$v) - Complexity = 7 |
| 29035 | // Dst: (NOT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v) |
| 29036 | /* 58228*/ /*SwitchType*/ 7, MVT::v4i32,// ->58237 |
| 29037 | /* 58230*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NOT), 0, |
| 29038 | MVT::v4i32, 1/*#Ops*/, 0, |
| 29039 | // Src: (xor:{ *:[v4i32] } immAllOnesV:{ *:[v4i32] }, V128:{ *:[v4i32] }:$v) - Complexity = 7 |
| 29040 | // Dst: (NOT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v) |
| 29041 | /* 58237*/ /*SwitchType*/ 7, MVT::v2i64,// ->58246 |
| 29042 | /* 58239*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NOT), 0, |
| 29043 | MVT::v2i64, 1/*#Ops*/, 0, |
| 29044 | // Src: (xor:{ *:[v2i64] } immAllOnesV:{ *:[v2i64] }, V128:{ *:[v2i64] }:$v) - Complexity = 7 |
| 29045 | // Dst: (NOT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v) |
| 29046 | /* 58246*/ 0, // EndSwitchType |
| 29047 | /* 58247*/ /*Scope*/ 44, /*->58292*/ |
| 29048 | /* 58248*/ OPC_RecordChild0, // #0 = $lhs |
| 29049 | /* 58249*/ OPC_RecordChild1, // #1 = $rhs |
| 29050 | /* 58250*/ OPC_SwitchType /*4 cases */, 8, MVT::v16i8,// ->58261 |
| 29051 | /* 58253*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::XOR), 0, |
| 29052 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 29053 | // Src: (xor:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 3 |
| 29054 | // Dst: (XOR:{ *:[v16i8] } ?:{ *:[v16i8] }:$lhs, ?:{ *:[v16i8] }:$rhs) |
| 29055 | /* 58261*/ /*SwitchType*/ 8, MVT::v8i16,// ->58271 |
| 29056 | /* 58263*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::XOR), 0, |
| 29057 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 29058 | // Src: (xor:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 29059 | // Dst: (XOR:{ *:[v8i16] } ?:{ *:[v8i16] }:$lhs, ?:{ *:[v8i16] }:$rhs) |
| 29060 | /* 58271*/ /*SwitchType*/ 8, MVT::v4i32,// ->58281 |
| 29061 | /* 58273*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::XOR), 0, |
| 29062 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 29063 | // Src: (xor:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 3 |
| 29064 | // Dst: (XOR:{ *:[v4i32] } ?:{ *:[v4i32] }:$lhs, ?:{ *:[v4i32] }:$rhs) |
| 29065 | /* 58281*/ /*SwitchType*/ 8, MVT::v2i64,// ->58291 |
| 29066 | /* 58283*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::XOR), 0, |
| 29067 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 29068 | // Src: (xor:{ *:[v2i64] } V128:{ *:[v2i64] }:$lhs, V128:{ *:[v2i64] }:$rhs) - Complexity = 3 |
| 29069 | // Dst: (XOR:{ *:[v2i64] } ?:{ *:[v2i64] }:$lhs, ?:{ *:[v2i64] }:$rhs) |
| 29070 | /* 58291*/ 0, // EndSwitchType |
| 29071 | /* 58292*/ 0, /*End of Scope*/ |
| 29072 | /* 58293*/ /*SwitchOpcode*/ 28, TARGET_VAL(ISD::SHL),// ->58324 |
| 29073 | /* 58296*/ OPC_RecordChild0, // #0 = $lhs |
| 29074 | /* 58297*/ OPC_RecordChild1, // #1 = $rhs |
| 29075 | /* 58298*/ OPC_SwitchType /*2 cases */, 10, MVT::i32,// ->58311 |
| 29076 | /* 58301*/ OPC_CheckChild1Type, MVT::i32, |
| 29077 | /* 58303*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHL_I32), 0, |
| 29078 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 29079 | // Src: (shl:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 29080 | // Dst: (SHL_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 29081 | /* 58311*/ /*SwitchType*/ 10, MVT::i64,// ->58323 |
| 29082 | /* 58313*/ OPC_CheckChild1Type, MVT::i64, |
| 29083 | /* 58315*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHL_I64), 0, |
| 29084 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 29085 | // Src: (shl:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 29086 | // Dst: (SHL_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 29087 | /* 58323*/ 0, // EndSwitchType |
| 29088 | /* 58324*/ /*SwitchOpcode*/ 28, TARGET_VAL(ISD::SRA),// ->58355 |
| 29089 | /* 58327*/ OPC_RecordChild0, // #0 = $lhs |
| 29090 | /* 58328*/ OPC_RecordChild1, // #1 = $rhs |
| 29091 | /* 58329*/ OPC_SwitchType /*2 cases */, 10, MVT::i32,// ->58342 |
| 29092 | /* 58332*/ OPC_CheckChild1Type, MVT::i32, |
| 29093 | /* 58334*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHR_S_I32), 0, |
| 29094 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 29095 | // Src: (sra:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 29096 | // Dst: (SHR_S_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 29097 | /* 58342*/ /*SwitchType*/ 10, MVT::i64,// ->58354 |
| 29098 | /* 58344*/ OPC_CheckChild1Type, MVT::i64, |
| 29099 | /* 58346*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHR_S_I64), 0, |
| 29100 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 29101 | // Src: (sra:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 29102 | // Dst: (SHR_S_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 29103 | /* 58354*/ 0, // EndSwitchType |
| 29104 | /* 58355*/ /*SwitchOpcode*/ 28, TARGET_VAL(ISD::SRL),// ->58386 |
| 29105 | /* 58358*/ OPC_RecordChild0, // #0 = $lhs |
| 29106 | /* 58359*/ OPC_RecordChild1, // #1 = $rhs |
| 29107 | /* 58360*/ OPC_SwitchType /*2 cases */, 10, MVT::i32,// ->58373 |
| 29108 | /* 58363*/ OPC_CheckChild1Type, MVT::i32, |
| 29109 | /* 58365*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHR_U_I32), 0, |
| 29110 | MVT::i32, 2/*#Ops*/, 0, 1, |
| 29111 | // Src: (srl:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) - Complexity = 3 |
| 29112 | // Dst: (SHR_U_I32:{ *:[i32] } I32:{ *:[i32] }:$lhs, I32:{ *:[i32] }:$rhs) |
| 29113 | /* 58373*/ /*SwitchType*/ 10, MVT::i64,// ->58385 |
| 29114 | /* 58375*/ OPC_CheckChild1Type, MVT::i64, |
| 29115 | /* 58377*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHR_U_I64), 0, |
| 29116 | MVT::i64, 2/*#Ops*/, 0, 1, |
| 29117 | // Src: (srl:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) - Complexity = 3 |
| 29118 | // Dst: (SHR_U_I64:{ *:[i64] } I64:{ *:[i64] }:$lhs, I64:{ *:[i64] }:$rhs) |
| 29119 | /* 58385*/ 0, // EndSwitchType |
| 29120 | /* 58386*/ /*SwitchOpcode*/ 25, TARGET_VAL(ISD::CTLZ),// ->58414 |
| 29121 | /* 58389*/ OPC_RecordChild0, // #0 = $src |
| 29122 | /* 58390*/ OPC_SwitchType /*2 cases */, 9, MVT::i32,// ->58402 |
| 29123 | /* 58393*/ OPC_CheckChild0Type, MVT::i32, |
| 29124 | /* 58395*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CLZ_I32), 0, |
| 29125 | MVT::i32, 1/*#Ops*/, 0, |
| 29126 | // Src: (ctlz:{ *:[i32] } I32:{ *:[i32] }:$src) - Complexity = 3 |
| 29127 | // Dst: (CLZ_I32:{ *:[i32] } I32:{ *:[i32] }:$src) |
| 29128 | /* 58402*/ /*SwitchType*/ 9, MVT::i64,// ->58413 |
| 29129 | /* 58404*/ OPC_CheckChild0Type, MVT::i64, |
| 29130 | /* 58406*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CLZ_I64), 0, |
| 29131 | MVT::i64, 1/*#Ops*/, 0, |
| 29132 | // Src: (ctlz:{ *:[i64] } I64:{ *:[i64] }:$src) - Complexity = 3 |
| 29133 | // Dst: (CLZ_I64:{ *:[i64] } I64:{ *:[i64] }:$src) |
| 29134 | /* 58413*/ 0, // EndSwitchType |
| 29135 | /* 58414*/ /*SwitchOpcode*/ 25, TARGET_VAL(ISD::CTTZ),// ->58442 |
| 29136 | /* 58417*/ OPC_RecordChild0, // #0 = $src |
| 29137 | /* 58418*/ OPC_SwitchType /*2 cases */, 9, MVT::i32,// ->58430 |
| 29138 | /* 58421*/ OPC_CheckChild0Type, MVT::i32, |
| 29139 | /* 58423*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CTZ_I32), 0, |
| 29140 | MVT::i32, 1/*#Ops*/, 0, |
| 29141 | // Src: (cttz:{ *:[i32] } I32:{ *:[i32] }:$src) - Complexity = 3 |
| 29142 | // Dst: (CTZ_I32:{ *:[i32] } I32:{ *:[i32] }:$src) |
| 29143 | /* 58430*/ /*SwitchType*/ 9, MVT::i64,// ->58441 |
| 29144 | /* 58432*/ OPC_CheckChild0Type, MVT::i64, |
| 29145 | /* 58434*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CTZ_I64), 0, |
| 29146 | MVT::i64, 1/*#Ops*/, 0, |
| 29147 | // Src: (cttz:{ *:[i64] } I64:{ *:[i64] }:$src) - Complexity = 3 |
| 29148 | // Dst: (CTZ_I64:{ *:[i64] } I64:{ *:[i64] }:$src) |
| 29149 | /* 58441*/ 0, // EndSwitchType |
| 29150 | /* 58442*/ /*SwitchOpcode*/ 25, TARGET_VAL(ISD::CTPOP),// ->58470 |
| 29151 | /* 58445*/ OPC_RecordChild0, // #0 = $src |
| 29152 | /* 58446*/ OPC_SwitchType /*2 cases */, 9, MVT::i32,// ->58458 |
| 29153 | /* 58449*/ OPC_CheckChild0Type, MVT::i32, |
| 29154 | /* 58451*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::POPCNT_I32), 0, |
| 29155 | MVT::i32, 1/*#Ops*/, 0, |
| 29156 | // Src: (ctpop:{ *:[i32] } I32:{ *:[i32] }:$src) - Complexity = 3 |
| 29157 | // Dst: (POPCNT_I32:{ *:[i32] } I32:{ *:[i32] }:$src) |
| 29158 | /* 58458*/ /*SwitchType*/ 9, MVT::i64,// ->58469 |
| 29159 | /* 58460*/ OPC_CheckChild0Type, MVT::i64, |
| 29160 | /* 58462*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::POPCNT_I64), 0, |
| 29161 | MVT::i64, 1/*#Ops*/, 0, |
| 29162 | // Src: (ctpop:{ *:[i64] } I64:{ *:[i64] }:$src) - Complexity = 3 |
| 29163 | // Dst: (POPCNT_I64:{ *:[i64] } I64:{ *:[i64] }:$src) |
| 29164 | /* 58469*/ 0, // EndSwitchType |
| 29165 | /* 58470*/ /*SwitchOpcode*/ 8, TARGET_VAL(ISD::TRUNCATE),// ->58481 |
| 29166 | /* 58473*/ OPC_RecordChild0, // #0 = $src |
| 29167 | /* 58474*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_WRAP_I64), 0, |
| 29168 | MVT::i32, 1/*#Ops*/, 0, |
| 29169 | // Src: (trunc:{ *:[i32] } I64:{ *:[i64] }:$src) - Complexity = 3 |
| 29170 | // Dst: (I32_WRAP_I64:{ *:[i32] } I64:{ *:[i64] }:$src) |
| 29171 | /* 58481*/ /*SwitchOpcode*/ 8, TARGET_VAL(ISD::SIGN_EXTEND),// ->58492 |
| 29172 | /* 58484*/ OPC_RecordChild0, // #0 = $src |
| 29173 | /* 58485*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_EXTEND_S_I32), 0, |
| 29174 | MVT::i64, 1/*#Ops*/, 0, |
| 29175 | // Src: (sext:{ *:[i64] } I32:{ *:[i32] }:$src) - Complexity = 3 |
| 29176 | // Dst: (I64_EXTEND_S_I32:{ *:[i64] } I32:{ *:[i32] }:$src) |
| 29177 | /* 58492*/ /*SwitchOpcode*/ 121, TARGET_VAL(ISD::FP_TO_SINT),// ->58616 |
| 29178 | /* 58495*/ OPC_RecordChild0, // #0 = $src |
| 29179 | /* 58496*/ OPC_Scope, 52, /*->58550*/ // 3 children in Scope |
| 29180 | /* 58498*/ OPC_CheckChild0Type, MVT::f32, |
| 29181 | /* 58500*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->58525 |
| 29182 | /* 58503*/ OPC_Scope, 9, /*->58514*/ // 2 children in Scope |
| 29183 | /* 58505*/ OPC_CheckPatternPredicate, 15, // (Subtarget->hasNontrappingFPToInt()) |
| 29184 | /* 58507*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_TRUNC_S_SAT_F32), 0, |
| 29185 | MVT::i32, 1/*#Ops*/, 0, |
| 29186 | // Src: (fp_to_sint:{ *:[i32] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29187 | // Dst: (I32_TRUNC_S_SAT_F32:{ *:[i32] } F32:{ *:[f32] }:$src) |
| 29188 | /* 58514*/ /*Scope*/ 9, /*->58524*/ |
| 29189 | /* 58515*/ OPC_CheckPatternPredicate, 16, // (!Subtarget->hasNontrappingFPToInt()) |
| 29190 | /* 58517*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::FP_TO_SINT_I32_F32), 0, |
| 29191 | MVT::i32, 1/*#Ops*/, 0, |
| 29192 | // Src: (fp_to_sint:{ *:[i32] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29193 | // Dst: (FP_TO_SINT_I32_F32:{ *:[i32] } F32:{ *:[f32] }:$src) |
| 29194 | /* 58524*/ 0, /*End of Scope*/ |
| 29195 | /* 58525*/ /*SwitchType*/ 22, MVT::i64,// ->58549 |
| 29196 | /* 58527*/ OPC_Scope, 9, /*->58538*/ // 2 children in Scope |
| 29197 | /* 58529*/ OPC_CheckPatternPredicate, 15, // (Subtarget->hasNontrappingFPToInt()) |
| 29198 | /* 58531*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_TRUNC_S_SAT_F32), 0, |
| 29199 | MVT::i64, 1/*#Ops*/, 0, |
| 29200 | // Src: (fp_to_sint:{ *:[i64] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29201 | // Dst: (I64_TRUNC_S_SAT_F32:{ *:[i64] } F32:{ *:[f32] }:$src) |
| 29202 | /* 58538*/ /*Scope*/ 9, /*->58548*/ |
| 29203 | /* 58539*/ OPC_CheckPatternPredicate, 16, // (!Subtarget->hasNontrappingFPToInt()) |
| 29204 | /* 58541*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::FP_TO_SINT_I64_F32), 0, |
| 29205 | MVT::i64, 1/*#Ops*/, 0, |
| 29206 | // Src: (fp_to_sint:{ *:[i64] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29207 | // Dst: (FP_TO_SINT_I64_F32:{ *:[i64] } F32:{ *:[f32] }:$src) |
| 29208 | /* 58548*/ 0, /*End of Scope*/ |
| 29209 | /* 58549*/ 0, // EndSwitchType |
| 29210 | /* 58550*/ /*Scope*/ 52, /*->58603*/ |
| 29211 | /* 58551*/ OPC_CheckChild0Type, MVT::f64, |
| 29212 | /* 58553*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->58578 |
| 29213 | /* 58556*/ OPC_Scope, 9, /*->58567*/ // 2 children in Scope |
| 29214 | /* 58558*/ OPC_CheckPatternPredicate, 15, // (Subtarget->hasNontrappingFPToInt()) |
| 29215 | /* 58560*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_TRUNC_S_SAT_F64), 0, |
| 29216 | MVT::i32, 1/*#Ops*/, 0, |
| 29217 | // Src: (fp_to_sint:{ *:[i32] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29218 | // Dst: (I32_TRUNC_S_SAT_F64:{ *:[i32] } F64:{ *:[f64] }:$src) |
| 29219 | /* 58567*/ /*Scope*/ 9, /*->58577*/ |
| 29220 | /* 58568*/ OPC_CheckPatternPredicate, 16, // (!Subtarget->hasNontrappingFPToInt()) |
| 29221 | /* 58570*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::FP_TO_SINT_I32_F64), 0, |
| 29222 | MVT::i32, 1/*#Ops*/, 0, |
| 29223 | // Src: (fp_to_sint:{ *:[i32] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29224 | // Dst: (FP_TO_SINT_I32_F64:{ *:[i32] } F64:{ *:[f64] }:$src) |
| 29225 | /* 58577*/ 0, /*End of Scope*/ |
| 29226 | /* 58578*/ /*SwitchType*/ 22, MVT::i64,// ->58602 |
| 29227 | /* 58580*/ OPC_Scope, 9, /*->58591*/ // 2 children in Scope |
| 29228 | /* 58582*/ OPC_CheckPatternPredicate, 15, // (Subtarget->hasNontrappingFPToInt()) |
| 29229 | /* 58584*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_TRUNC_S_SAT_F64), 0, |
| 29230 | MVT::i64, 1/*#Ops*/, 0, |
| 29231 | // Src: (fp_to_sint:{ *:[i64] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29232 | // Dst: (I64_TRUNC_S_SAT_F64:{ *:[i64] } F64:{ *:[f64] }:$src) |
| 29233 | /* 58591*/ /*Scope*/ 9, /*->58601*/ |
| 29234 | /* 58592*/ OPC_CheckPatternPredicate, 16, // (!Subtarget->hasNontrappingFPToInt()) |
| 29235 | /* 58594*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::FP_TO_SINT_I64_F64), 0, |
| 29236 | MVT::i64, 1/*#Ops*/, 0, |
| 29237 | // Src: (fp_to_sint:{ *:[i64] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29238 | // Dst: (FP_TO_SINT_I64_F64:{ *:[i64] } F64:{ *:[f64] }:$src) |
| 29239 | /* 58601*/ 0, /*End of Scope*/ |
| 29240 | /* 58602*/ 0, // EndSwitchType |
| 29241 | /* 58603*/ /*Scope*/ 11, /*->58615*/ |
| 29242 | /* 58604*/ OPC_CheckType, MVT::v4i32, |
| 29243 | /* 58606*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29244 | /* 58608*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::fp_to_sint_I32x4), 0, |
| 29245 | MVT::v4i32, 1/*#Ops*/, 0, |
| 29246 | // Src: (fp_to_sint:{ *:[v4i32] } V128:{ *:[v4f32] }:$vec) - Complexity = 3 |
| 29247 | // Dst: (fp_to_sint_I32x4:{ *:[v4i32] } V128:{ *:[v4f32] }:$vec) |
| 29248 | /* 58615*/ 0, /*End of Scope*/ |
| 29249 | /* 58616*/ /*SwitchOpcode*/ 121, TARGET_VAL(ISD::FP_TO_UINT),// ->58740 |
| 29250 | /* 58619*/ OPC_RecordChild0, // #0 = $src |
| 29251 | /* 58620*/ OPC_Scope, 52, /*->58674*/ // 3 children in Scope |
| 29252 | /* 58622*/ OPC_CheckChild0Type, MVT::f32, |
| 29253 | /* 58624*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->58649 |
| 29254 | /* 58627*/ OPC_Scope, 9, /*->58638*/ // 2 children in Scope |
| 29255 | /* 58629*/ OPC_CheckPatternPredicate, 15, // (Subtarget->hasNontrappingFPToInt()) |
| 29256 | /* 58631*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_TRUNC_U_SAT_F32), 0, |
| 29257 | MVT::i32, 1/*#Ops*/, 0, |
| 29258 | // Src: (fp_to_uint:{ *:[i32] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29259 | // Dst: (I32_TRUNC_U_SAT_F32:{ *:[i32] } F32:{ *:[f32] }:$src) |
| 29260 | /* 58638*/ /*Scope*/ 9, /*->58648*/ |
| 29261 | /* 58639*/ OPC_CheckPatternPredicate, 16, // (!Subtarget->hasNontrappingFPToInt()) |
| 29262 | /* 58641*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::FP_TO_UINT_I32_F32), 0, |
| 29263 | MVT::i32, 1/*#Ops*/, 0, |
| 29264 | // Src: (fp_to_uint:{ *:[i32] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29265 | // Dst: (FP_TO_UINT_I32_F32:{ *:[i32] } F32:{ *:[f32] }:$src) |
| 29266 | /* 58648*/ 0, /*End of Scope*/ |
| 29267 | /* 58649*/ /*SwitchType*/ 22, MVT::i64,// ->58673 |
| 29268 | /* 58651*/ OPC_Scope, 9, /*->58662*/ // 2 children in Scope |
| 29269 | /* 58653*/ OPC_CheckPatternPredicate, 15, // (Subtarget->hasNontrappingFPToInt()) |
| 29270 | /* 58655*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_TRUNC_U_SAT_F32), 0, |
| 29271 | MVT::i64, 1/*#Ops*/, 0, |
| 29272 | // Src: (fp_to_uint:{ *:[i64] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29273 | // Dst: (I64_TRUNC_U_SAT_F32:{ *:[i64] } F32:{ *:[f32] }:$src) |
| 29274 | /* 58662*/ /*Scope*/ 9, /*->58672*/ |
| 29275 | /* 58663*/ OPC_CheckPatternPredicate, 16, // (!Subtarget->hasNontrappingFPToInt()) |
| 29276 | /* 58665*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::FP_TO_UINT_I64_F32), 0, |
| 29277 | MVT::i64, 1/*#Ops*/, 0, |
| 29278 | // Src: (fp_to_uint:{ *:[i64] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29279 | // Dst: (FP_TO_UINT_I64_F32:{ *:[i64] } F32:{ *:[f32] }:$src) |
| 29280 | /* 58672*/ 0, /*End of Scope*/ |
| 29281 | /* 58673*/ 0, // EndSwitchType |
| 29282 | /* 58674*/ /*Scope*/ 52, /*->58727*/ |
| 29283 | /* 58675*/ OPC_CheckChild0Type, MVT::f64, |
| 29284 | /* 58677*/ OPC_SwitchType /*2 cases */, 22, MVT::i32,// ->58702 |
| 29285 | /* 58680*/ OPC_Scope, 9, /*->58691*/ // 2 children in Scope |
| 29286 | /* 58682*/ OPC_CheckPatternPredicate, 15, // (Subtarget->hasNontrappingFPToInt()) |
| 29287 | /* 58684*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_TRUNC_U_SAT_F64), 0, |
| 29288 | MVT::i32, 1/*#Ops*/, 0, |
| 29289 | // Src: (fp_to_uint:{ *:[i32] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29290 | // Dst: (I32_TRUNC_U_SAT_F64:{ *:[i32] } F64:{ *:[f64] }:$src) |
| 29291 | /* 58691*/ /*Scope*/ 9, /*->58701*/ |
| 29292 | /* 58692*/ OPC_CheckPatternPredicate, 16, // (!Subtarget->hasNontrappingFPToInt()) |
| 29293 | /* 58694*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::FP_TO_UINT_I32_F64), 0, |
| 29294 | MVT::i32, 1/*#Ops*/, 0, |
| 29295 | // Src: (fp_to_uint:{ *:[i32] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29296 | // Dst: (FP_TO_UINT_I32_F64:{ *:[i32] } F64:{ *:[f64] }:$src) |
| 29297 | /* 58701*/ 0, /*End of Scope*/ |
| 29298 | /* 58702*/ /*SwitchType*/ 22, MVT::i64,// ->58726 |
| 29299 | /* 58704*/ OPC_Scope, 9, /*->58715*/ // 2 children in Scope |
| 29300 | /* 58706*/ OPC_CheckPatternPredicate, 15, // (Subtarget->hasNontrappingFPToInt()) |
| 29301 | /* 58708*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_TRUNC_U_SAT_F64), 0, |
| 29302 | MVT::i64, 1/*#Ops*/, 0, |
| 29303 | // Src: (fp_to_uint:{ *:[i64] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29304 | // Dst: (I64_TRUNC_U_SAT_F64:{ *:[i64] } F64:{ *:[f64] }:$src) |
| 29305 | /* 58715*/ /*Scope*/ 9, /*->58725*/ |
| 29306 | /* 58716*/ OPC_CheckPatternPredicate, 16, // (!Subtarget->hasNontrappingFPToInt()) |
| 29307 | /* 58718*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::FP_TO_UINT_I64_F64), 0, |
| 29308 | MVT::i64, 1/*#Ops*/, 0, |
| 29309 | // Src: (fp_to_uint:{ *:[i64] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29310 | // Dst: (FP_TO_UINT_I64_F64:{ *:[i64] } F64:{ *:[f64] }:$src) |
| 29311 | /* 58725*/ 0, /*End of Scope*/ |
| 29312 | /* 58726*/ 0, // EndSwitchType |
| 29313 | /* 58727*/ /*Scope*/ 11, /*->58739*/ |
| 29314 | /* 58728*/ OPC_CheckType, MVT::v4i32, |
| 29315 | /* 58730*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29316 | /* 58732*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::fp_to_uint_I32x4), 0, |
| 29317 | MVT::v4i32, 1/*#Ops*/, 0, |
| 29318 | // Src: (fp_to_uint:{ *:[v4i32] } V128:{ *:[v4f32] }:$vec) - Complexity = 3 |
| 29319 | // Dst: (fp_to_uint_I32x4:{ *:[v4i32] } V128:{ *:[v4f32] }:$vec) |
| 29320 | /* 58739*/ 0, /*End of Scope*/ |
| 29321 | /* 58740*/ /*SwitchOpcode*/ 103|128,1/*231*/, TARGET_VAL(ISD::BITCAST),// ->58975 |
| 29322 | /* 58744*/ OPC_RecordChild0, // #0 = $src |
| 29323 | /* 58745*/ OPC_Scope, 11, /*->58758*/ // 10 children in Scope |
| 29324 | /* 58747*/ OPC_CheckChild0Type, MVT::f32, |
| 29325 | /* 58749*/ OPC_CheckType, MVT::i32, |
| 29326 | /* 58751*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I32_REINTERPRET_F32), 0, |
| 29327 | MVT::i32, 1/*#Ops*/, 0, |
| 29328 | // Src: (bitconvert:{ *:[i32] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29329 | // Dst: (I32_REINTERPRET_F32:{ *:[i32] } F32:{ *:[f32] }:$src) |
| 29330 | /* 58758*/ /*Scope*/ 11, /*->58770*/ |
| 29331 | /* 58759*/ OPC_CheckChild0Type, MVT::f64, |
| 29332 | /* 58761*/ OPC_CheckType, MVT::i64, |
| 29333 | /* 58763*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::I64_REINTERPRET_F64), 0, |
| 29334 | MVT::i64, 1/*#Ops*/, 0, |
| 29335 | // Src: (bitconvert:{ *:[i64] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29336 | // Dst: (I64_REINTERPRET_F64:{ *:[i64] } F64:{ *:[f64] }:$src) |
| 29337 | /* 58770*/ /*Scope*/ 11, /*->58782*/ |
| 29338 | /* 58771*/ OPC_CheckChild0Type, MVT::i32, |
| 29339 | /* 58773*/ OPC_CheckType, MVT::f32, |
| 29340 | /* 58775*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::F32_REINTERPRET_I32), 0, |
| 29341 | MVT::f32, 1/*#Ops*/, 0, |
| 29342 | // Src: (bitconvert:{ *:[f32] } I32:{ *:[i32] }:$src) - Complexity = 3 |
| 29343 | // Dst: (F32_REINTERPRET_I32:{ *:[f32] } I32:{ *:[i32] }:$src) |
| 29344 | /* 58782*/ /*Scope*/ 11, /*->58794*/ |
| 29345 | /* 58783*/ OPC_CheckChild0Type, MVT::i64, |
| 29346 | /* 58785*/ OPC_CheckType, MVT::f64, |
| 29347 | /* 58787*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::F64_REINTERPRET_I64), 0, |
| 29348 | MVT::f64, 1/*#Ops*/, 0, |
| 29349 | // Src: (bitconvert:{ *:[f64] } I64:{ *:[i64] }:$src) - Complexity = 3 |
| 29350 | // Dst: (F64_REINTERPRET_I64:{ *:[f64] } I64:{ *:[i64] }:$src) |
| 29351 | /* 58794*/ /*Scope*/ 29, /*->58824*/ |
| 29352 | /* 58795*/ OPC_CheckChild0Type, MVT::v8i16, |
| 29353 | /* 58797*/ OPC_SwitchType /*5 cases */, 3, MVT::v16i8,// ->58803 |
| 29354 | /* 58800*/ OPC_CompleteMatch, 1, 0, |
| 29355 | // Src: (bitconvert:{ *:[v16i8] } V128:{ *:[v8i16] }:$v) - Complexity = 3 |
| 29356 | // Dst: V128:{ *:[v16i8] }:$v |
| 29357 | /* 58803*/ /*SwitchType*/ 3, MVT::v4i32,// ->58808 |
| 29358 | /* 58805*/ OPC_CompleteMatch, 1, 0, |
| 29359 | // Src: (bitconvert:{ *:[v4i32] } V128:{ *:[v8i16] }:$v) - Complexity = 3 |
| 29360 | // Dst: V128:{ *:[v4i32] }:$v |
| 29361 | /* 58808*/ /*SwitchType*/ 3, MVT::v2i64,// ->58813 |
| 29362 | /* 58810*/ OPC_CompleteMatch, 1, 0, |
| 29363 | // Src: (bitconvert:{ *:[v2i64] } V128:{ *:[v8i16] }:$v) - Complexity = 3 |
| 29364 | // Dst: V128:{ *:[v2i64] }:$v |
| 29365 | /* 58813*/ /*SwitchType*/ 3, MVT::v4f32,// ->58818 |
| 29366 | /* 58815*/ OPC_CompleteMatch, 1, 0, |
| 29367 | // Src: (bitconvert:{ *:[v4f32] } V128:{ *:[v8i16] }:$v) - Complexity = 3 |
| 29368 | // Dst: V128:{ *:[v4f32] }:$v |
| 29369 | /* 58818*/ /*SwitchType*/ 3, MVT::v2f64,// ->58823 |
| 29370 | /* 58820*/ OPC_CompleteMatch, 1, 0, |
| 29371 | // Src: (bitconvert:{ *:[v2f64] } V128:{ *:[v8i16] }:$v) - Complexity = 3 |
| 29372 | // Dst: V128:{ *:[v2f64] }:$v |
| 29373 | /* 58823*/ 0, // EndSwitchType |
| 29374 | /* 58824*/ /*Scope*/ 29, /*->58854*/ |
| 29375 | /* 58825*/ OPC_CheckChild0Type, MVT::v4i32, |
| 29376 | /* 58827*/ OPC_SwitchType /*5 cases */, 3, MVT::v16i8,// ->58833 |
| 29377 | /* 58830*/ OPC_CompleteMatch, 1, 0, |
| 29378 | // Src: (bitconvert:{ *:[v16i8] } V128:{ *:[v4i32] }:$v) - Complexity = 3 |
| 29379 | // Dst: V128:{ *:[v16i8] }:$v |
| 29380 | /* 58833*/ /*SwitchType*/ 3, MVT::v8i16,// ->58838 |
| 29381 | /* 58835*/ OPC_CompleteMatch, 1, 0, |
| 29382 | // Src: (bitconvert:{ *:[v8i16] } V128:{ *:[v4i32] }:$v) - Complexity = 3 |
| 29383 | // Dst: V128:{ *:[v8i16] }:$v |
| 29384 | /* 58838*/ /*SwitchType*/ 3, MVT::v2i64,// ->58843 |
| 29385 | /* 58840*/ OPC_CompleteMatch, 1, 0, |
| 29386 | // Src: (bitconvert:{ *:[v2i64] } V128:{ *:[v4i32] }:$v) - Complexity = 3 |
| 29387 | // Dst: V128:{ *:[v2i64] }:$v |
| 29388 | /* 58843*/ /*SwitchType*/ 3, MVT::v4f32,// ->58848 |
| 29389 | /* 58845*/ OPC_CompleteMatch, 1, 0, |
| 29390 | // Src: (bitconvert:{ *:[v4f32] } V128:{ *:[v4i32] }:$v) - Complexity = 3 |
| 29391 | // Dst: V128:{ *:[v4f32] }:$v |
| 29392 | /* 58848*/ /*SwitchType*/ 3, MVT::v2f64,// ->58853 |
| 29393 | /* 58850*/ OPC_CompleteMatch, 1, 0, |
| 29394 | // Src: (bitconvert:{ *:[v2f64] } V128:{ *:[v4i32] }:$v) - Complexity = 3 |
| 29395 | // Dst: V128:{ *:[v2f64] }:$v |
| 29396 | /* 58853*/ 0, // EndSwitchType |
| 29397 | /* 58854*/ /*Scope*/ 29, /*->58884*/ |
| 29398 | /* 58855*/ OPC_CheckChild0Type, MVT::v2i64, |
| 29399 | /* 58857*/ OPC_SwitchType /*5 cases */, 3, MVT::v16i8,// ->58863 |
| 29400 | /* 58860*/ OPC_CompleteMatch, 1, 0, |
| 29401 | // Src: (bitconvert:{ *:[v16i8] } V128:{ *:[v2i64] }:$v) - Complexity = 3 |
| 29402 | // Dst: V128:{ *:[v16i8] }:$v |
| 29403 | /* 58863*/ /*SwitchType*/ 3, MVT::v8i16,// ->58868 |
| 29404 | /* 58865*/ OPC_CompleteMatch, 1, 0, |
| 29405 | // Src: (bitconvert:{ *:[v8i16] } V128:{ *:[v2i64] }:$v) - Complexity = 3 |
| 29406 | // Dst: V128:{ *:[v8i16] }:$v |
| 29407 | /* 58868*/ /*SwitchType*/ 3, MVT::v4i32,// ->58873 |
| 29408 | /* 58870*/ OPC_CompleteMatch, 1, 0, |
| 29409 | // Src: (bitconvert:{ *:[v4i32] } V128:{ *:[v2i64] }:$v) - Complexity = 3 |
| 29410 | // Dst: V128:{ *:[v4i32] }:$v |
| 29411 | /* 58873*/ /*SwitchType*/ 3, MVT::v4f32,// ->58878 |
| 29412 | /* 58875*/ OPC_CompleteMatch, 1, 0, |
| 29413 | // Src: (bitconvert:{ *:[v4f32] } V128:{ *:[v2i64] }:$v) - Complexity = 3 |
| 29414 | // Dst: V128:{ *:[v4f32] }:$v |
| 29415 | /* 58878*/ /*SwitchType*/ 3, MVT::v2f64,// ->58883 |
| 29416 | /* 58880*/ OPC_CompleteMatch, 1, 0, |
| 29417 | // Src: (bitconvert:{ *:[v2f64] } V128:{ *:[v2i64] }:$v) - Complexity = 3 |
| 29418 | // Dst: V128:{ *:[v2f64] }:$v |
| 29419 | /* 58883*/ 0, // EndSwitchType |
| 29420 | /* 58884*/ /*Scope*/ 29, /*->58914*/ |
| 29421 | /* 58885*/ OPC_CheckChild0Type, MVT::v4f32, |
| 29422 | /* 58887*/ OPC_SwitchType /*5 cases */, 3, MVT::v16i8,// ->58893 |
| 29423 | /* 58890*/ OPC_CompleteMatch, 1, 0, |
| 29424 | // Src: (bitconvert:{ *:[v16i8] } V128:{ *:[v4f32] }:$v) - Complexity = 3 |
| 29425 | // Dst: V128:{ *:[v16i8] }:$v |
| 29426 | /* 58893*/ /*SwitchType*/ 3, MVT::v8i16,// ->58898 |
| 29427 | /* 58895*/ OPC_CompleteMatch, 1, 0, |
| 29428 | // Src: (bitconvert:{ *:[v8i16] } V128:{ *:[v4f32] }:$v) - Complexity = 3 |
| 29429 | // Dst: V128:{ *:[v8i16] }:$v |
| 29430 | /* 58898*/ /*SwitchType*/ 3, MVT::v4i32,// ->58903 |
| 29431 | /* 58900*/ OPC_CompleteMatch, 1, 0, |
| 29432 | // Src: (bitconvert:{ *:[v4i32] } V128:{ *:[v4f32] }:$v) - Complexity = 3 |
| 29433 | // Dst: V128:{ *:[v4i32] }:$v |
| 29434 | /* 58903*/ /*SwitchType*/ 3, MVT::v2i64,// ->58908 |
| 29435 | /* 58905*/ OPC_CompleteMatch, 1, 0, |
| 29436 | // Src: (bitconvert:{ *:[v2i64] } V128:{ *:[v4f32] }:$v) - Complexity = 3 |
| 29437 | // Dst: V128:{ *:[v2i64] }:$v |
| 29438 | /* 58908*/ /*SwitchType*/ 3, MVT::v2f64,// ->58913 |
| 29439 | /* 58910*/ OPC_CompleteMatch, 1, 0, |
| 29440 | // Src: (bitconvert:{ *:[v2f64] } V128:{ *:[v4f32] }:$v) - Complexity = 3 |
| 29441 | // Dst: V128:{ *:[v2f64] }:$v |
| 29442 | /* 58913*/ 0, // EndSwitchType |
| 29443 | /* 58914*/ /*Scope*/ 29, /*->58944*/ |
| 29444 | /* 58915*/ OPC_CheckChild0Type, MVT::v2f64, |
| 29445 | /* 58917*/ OPC_SwitchType /*5 cases */, 3, MVT::v16i8,// ->58923 |
| 29446 | /* 58920*/ OPC_CompleteMatch, 1, 0, |
| 29447 | // Src: (bitconvert:{ *:[v16i8] } V128:{ *:[v2f64] }:$v) - Complexity = 3 |
| 29448 | // Dst: V128:{ *:[v16i8] }:$v |
| 29449 | /* 58923*/ /*SwitchType*/ 3, MVT::v8i16,// ->58928 |
| 29450 | /* 58925*/ OPC_CompleteMatch, 1, 0, |
| 29451 | // Src: (bitconvert:{ *:[v8i16] } V128:{ *:[v2f64] }:$v) - Complexity = 3 |
| 29452 | // Dst: V128:{ *:[v8i16] }:$v |
| 29453 | /* 58928*/ /*SwitchType*/ 3, MVT::v4i32,// ->58933 |
| 29454 | /* 58930*/ OPC_CompleteMatch, 1, 0, |
| 29455 | // Src: (bitconvert:{ *:[v4i32] } V128:{ *:[v2f64] }:$v) - Complexity = 3 |
| 29456 | // Dst: V128:{ *:[v4i32] }:$v |
| 29457 | /* 58933*/ /*SwitchType*/ 3, MVT::v2i64,// ->58938 |
| 29458 | /* 58935*/ OPC_CompleteMatch, 1, 0, |
| 29459 | // Src: (bitconvert:{ *:[v2i64] } V128:{ *:[v2f64] }:$v) - Complexity = 3 |
| 29460 | // Dst: V128:{ *:[v2i64] }:$v |
| 29461 | /* 58938*/ /*SwitchType*/ 3, MVT::v4f32,// ->58943 |
| 29462 | /* 58940*/ OPC_CompleteMatch, 1, 0, |
| 29463 | // Src: (bitconvert:{ *:[v4f32] } V128:{ *:[v2f64] }:$v) - Complexity = 3 |
| 29464 | // Dst: V128:{ *:[v4f32] }:$v |
| 29465 | /* 58943*/ 0, // EndSwitchType |
| 29466 | /* 58944*/ /*Scope*/ 29, /*->58974*/ |
| 29467 | /* 58945*/ OPC_CheckChild0Type, MVT::v16i8, |
| 29468 | /* 58947*/ OPC_SwitchType /*5 cases */, 3, MVT::v8i16,// ->58953 |
| 29469 | /* 58950*/ OPC_CompleteMatch, 1, 0, |
| 29470 | // Src: (bitconvert:{ *:[v8i16] } V128:{ *:[v16i8] }:$v) - Complexity = 3 |
| 29471 | // Dst: V128:{ *:[v8i16] }:$v |
| 29472 | /* 58953*/ /*SwitchType*/ 3, MVT::v4i32,// ->58958 |
| 29473 | /* 58955*/ OPC_CompleteMatch, 1, 0, |
| 29474 | // Src: (bitconvert:{ *:[v4i32] } V128:{ *:[v16i8] }:$v) - Complexity = 3 |
| 29475 | // Dst: V128:{ *:[v4i32] }:$v |
| 29476 | /* 58958*/ /*SwitchType*/ 3, MVT::v2i64,// ->58963 |
| 29477 | /* 58960*/ OPC_CompleteMatch, 1, 0, |
| 29478 | // Src: (bitconvert:{ *:[v2i64] } V128:{ *:[v16i8] }:$v) - Complexity = 3 |
| 29479 | // Dst: V128:{ *:[v2i64] }:$v |
| 29480 | /* 58963*/ /*SwitchType*/ 3, MVT::v4f32,// ->58968 |
| 29481 | /* 58965*/ OPC_CompleteMatch, 1, 0, |
| 29482 | // Src: (bitconvert:{ *:[v4f32] } V128:{ *:[v16i8] }:$v) - Complexity = 3 |
| 29483 | // Dst: V128:{ *:[v4f32] }:$v |
| 29484 | /* 58968*/ /*SwitchType*/ 3, MVT::v2f64,// ->58973 |
| 29485 | /* 58970*/ OPC_CompleteMatch, 1, 0, |
| 29486 | // Src: (bitconvert:{ *:[v2f64] } V128:{ *:[v16i8] }:$v) - Complexity = 3 |
| 29487 | // Dst: V128:{ *:[v2f64] }:$v |
| 29488 | /* 58973*/ 0, // EndSwitchType |
| 29489 | /* 58974*/ 0, /*End of Scope*/ |
| 29490 | /* 58975*/ /*SwitchOpcode*/ 25, TARGET_VAL(ISD::ConstantFP),// ->59003 |
| 29491 | /* 58978*/ OPC_RecordNode, // #0 = $imm |
| 29492 | /* 58979*/ OPC_SwitchType /*2 cases */, 9, MVT::f32,// ->58991 |
| 29493 | /* 58982*/ OPC_EmitConvertToTarget, 0, |
| 29494 | /* 58984*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_F32), 0, |
| 29495 | MVT::f32, 1/*#Ops*/, 1, |
| 29496 | // Src: (fpimm:{ *:[f32] }):$imm - Complexity = 3 |
| 29497 | // Dst: (CONST_F32:{ *:[f32] } (fpimm:{ *:[f32] }):$imm) |
| 29498 | /* 58991*/ /*SwitchType*/ 9, MVT::f64,// ->59002 |
| 29499 | /* 58993*/ OPC_EmitConvertToTarget, 0, |
| 29500 | /* 58995*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_F64), 0, |
| 29501 | MVT::f64, 1/*#Ops*/, 1, |
| 29502 | // Src: (fpimm:{ *:[f64] }):$imm - Complexity = 3 |
| 29503 | // Dst: (CONST_F64:{ *:[f64] } (fpimm:{ *:[f64] }):$imm) |
| 29504 | /* 59002*/ 0, // EndSwitchType |
| 29505 | /* 59003*/ /*SwitchOpcode*/ 61, TARGET_VAL(ISD::SINT_TO_FP),// ->59067 |
| 29506 | /* 59006*/ OPC_RecordChild0, // #0 = $src |
| 29507 | /* 59007*/ OPC_Scope, 22, /*->59031*/ // 3 children in Scope |
| 29508 | /* 59009*/ OPC_CheckChild0Type, MVT::i32, |
| 29509 | /* 59011*/ OPC_SwitchType /*2 cases */, 7, MVT::f32,// ->59021 |
| 29510 | /* 59014*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::F32_CONVERT_S_I32), 0, |
| 29511 | MVT::f32, 1/*#Ops*/, 0, |
| 29512 | // Src: (sint_to_fp:{ *:[f32] } I32:{ *:[i32] }:$src) - Complexity = 3 |
| 29513 | // Dst: (F32_CONVERT_S_I32:{ *:[f32] } I32:{ *:[i32] }:$src) |
| 29514 | /* 59021*/ /*SwitchType*/ 7, MVT::f64,// ->59030 |
| 29515 | /* 59023*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::F64_CONVERT_S_I32), 0, |
| 29516 | MVT::f64, 1/*#Ops*/, 0, |
| 29517 | // Src: (sint_to_fp:{ *:[f64] } I32:{ *:[i32] }:$src) - Complexity = 3 |
| 29518 | // Dst: (F64_CONVERT_S_I32:{ *:[f64] } I32:{ *:[i32] }:$src) |
| 29519 | /* 59030*/ 0, // EndSwitchType |
| 29520 | /* 59031*/ /*Scope*/ 22, /*->59054*/ |
| 29521 | /* 59032*/ OPC_CheckChild0Type, MVT::i64, |
| 29522 | /* 59034*/ OPC_SwitchType /*2 cases */, 7, MVT::f32,// ->59044 |
| 29523 | /* 59037*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::F32_CONVERT_S_I64), 0, |
| 29524 | MVT::f32, 1/*#Ops*/, 0, |
| 29525 | // Src: (sint_to_fp:{ *:[f32] } I64:{ *:[i64] }:$src) - Complexity = 3 |
| 29526 | // Dst: (F32_CONVERT_S_I64:{ *:[f32] } I64:{ *:[i64] }:$src) |
| 29527 | /* 59044*/ /*SwitchType*/ 7, MVT::f64,// ->59053 |
| 29528 | /* 59046*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::F64_CONVERT_S_I64), 0, |
| 29529 | MVT::f64, 1/*#Ops*/, 0, |
| 29530 | // Src: (sint_to_fp:{ *:[f64] } I64:{ *:[i64] }:$src) - Complexity = 3 |
| 29531 | // Dst: (F64_CONVERT_S_I64:{ *:[f64] } I64:{ *:[i64] }:$src) |
| 29532 | /* 59053*/ 0, // EndSwitchType |
| 29533 | /* 59054*/ /*Scope*/ 11, /*->59066*/ |
| 29534 | /* 59055*/ OPC_CheckType, MVT::v4f32, |
| 29535 | /* 59057*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29536 | /* 59059*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::sint_to_fp_F32x4), 0, |
| 29537 | MVT::v4f32, 1/*#Ops*/, 0, |
| 29538 | // Src: (sint_to_fp:{ *:[v4f32] } V128:{ *:[v4i32] }:$vec) - Complexity = 3 |
| 29539 | // Dst: (sint_to_fp_F32x4:{ *:[v4f32] } V128:{ *:[v4i32] }:$vec) |
| 29540 | /* 59066*/ 0, /*End of Scope*/ |
| 29541 | /* 59067*/ /*SwitchOpcode*/ 61, TARGET_VAL(ISD::UINT_TO_FP),// ->59131 |
| 29542 | /* 59070*/ OPC_RecordChild0, // #0 = $src |
| 29543 | /* 59071*/ OPC_Scope, 22, /*->59095*/ // 3 children in Scope |
| 29544 | /* 59073*/ OPC_CheckChild0Type, MVT::i32, |
| 29545 | /* 59075*/ OPC_SwitchType /*2 cases */, 7, MVT::f32,// ->59085 |
| 29546 | /* 59078*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::F32_CONVERT_U_I32), 0, |
| 29547 | MVT::f32, 1/*#Ops*/, 0, |
| 29548 | // Src: (uint_to_fp:{ *:[f32] } I32:{ *:[i32] }:$src) - Complexity = 3 |
| 29549 | // Dst: (F32_CONVERT_U_I32:{ *:[f32] } I32:{ *:[i32] }:$src) |
| 29550 | /* 59085*/ /*SwitchType*/ 7, MVT::f64,// ->59094 |
| 29551 | /* 59087*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::F64_CONVERT_U_I32), 0, |
| 29552 | MVT::f64, 1/*#Ops*/, 0, |
| 29553 | // Src: (uint_to_fp:{ *:[f64] } I32:{ *:[i32] }:$src) - Complexity = 3 |
| 29554 | // Dst: (F64_CONVERT_U_I32:{ *:[f64] } I32:{ *:[i32] }:$src) |
| 29555 | /* 59094*/ 0, // EndSwitchType |
| 29556 | /* 59095*/ /*Scope*/ 22, /*->59118*/ |
| 29557 | /* 59096*/ OPC_CheckChild0Type, MVT::i64, |
| 29558 | /* 59098*/ OPC_SwitchType /*2 cases */, 7, MVT::f32,// ->59108 |
| 29559 | /* 59101*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::F32_CONVERT_U_I64), 0, |
| 29560 | MVT::f32, 1/*#Ops*/, 0, |
| 29561 | // Src: (uint_to_fp:{ *:[f32] } I64:{ *:[i64] }:$src) - Complexity = 3 |
| 29562 | // Dst: (F32_CONVERT_U_I64:{ *:[f32] } I64:{ *:[i64] }:$src) |
| 29563 | /* 59108*/ /*SwitchType*/ 7, MVT::f64,// ->59117 |
| 29564 | /* 59110*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::F64_CONVERT_U_I64), 0, |
| 29565 | MVT::f64, 1/*#Ops*/, 0, |
| 29566 | // Src: (uint_to_fp:{ *:[f64] } I64:{ *:[i64] }:$src) - Complexity = 3 |
| 29567 | // Dst: (F64_CONVERT_U_I64:{ *:[f64] } I64:{ *:[i64] }:$src) |
| 29568 | /* 59117*/ 0, // EndSwitchType |
| 29569 | /* 59118*/ /*Scope*/ 11, /*->59130*/ |
| 29570 | /* 59119*/ OPC_CheckType, MVT::v4f32, |
| 29571 | /* 59121*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29572 | /* 59123*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::uint_to_fp_F32x4), 0, |
| 29573 | MVT::v4f32, 1/*#Ops*/, 0, |
| 29574 | // Src: (uint_to_fp:{ *:[v4f32] } V128:{ *:[v4i32] }:$vec) - Complexity = 3 |
| 29575 | // Dst: (uint_to_fp_F32x4:{ *:[v4f32] } V128:{ *:[v4i32] }:$vec) |
| 29576 | /* 59130*/ 0, /*End of Scope*/ |
| 29577 | /* 59131*/ /*SwitchOpcode*/ 8, TARGET_VAL(ISD::FP_EXTEND),// ->59142 |
| 29578 | /* 59134*/ OPC_RecordChild0, // #0 = $src |
| 29579 | /* 59135*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::F64_PROMOTE_F32), 0, |
| 29580 | MVT::f64, 1/*#Ops*/, 0, |
| 29581 | // Src: (fpextend:{ *:[f64] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29582 | // Dst: (F64_PROMOTE_F32:{ *:[f64] } F32:{ *:[f32] }:$src) |
| 29583 | /* 59142*/ /*SwitchOpcode*/ 8, TARGET_VAL(ISD::FP_ROUND),// ->59153 |
| 29584 | /* 59145*/ OPC_RecordChild0, // #0 = $src |
| 29585 | /* 59146*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::F32_DEMOTE_F64), 0, |
| 29586 | MVT::f32, 1/*#Ops*/, 0, |
| 29587 | // Src: (fpround:{ *:[f32] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29588 | // Dst: (F32_DEMOTE_F64:{ *:[f32] } F64:{ *:[f64] }:$src) |
| 29589 | /* 59153*/ /*SwitchOpcode*/ 48, TARGET_VAL(ISD::FADD),// ->59204 |
| 29590 | /* 59156*/ OPC_RecordChild0, // #0 = $lhs |
| 29591 | /* 59157*/ OPC_RecordChild1, // #1 = $rhs |
| 29592 | /* 59158*/ OPC_SwitchType /*4 cases */, 8, MVT::f32,// ->59169 |
| 29593 | /* 59161*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_F32), 0, |
| 29594 | MVT::f32, 2/*#Ops*/, 0, 1, |
| 29595 | // Src: (fadd:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) - Complexity = 3 |
| 29596 | // Dst: (ADD_F32:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 29597 | /* 59169*/ /*SwitchType*/ 8, MVT::f64,// ->59179 |
| 29598 | /* 59171*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_F64), 0, |
| 29599 | MVT::f64, 2/*#Ops*/, 0, 1, |
| 29600 | // Src: (fadd:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) - Complexity = 3 |
| 29601 | // Dst: (ADD_F64:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 29602 | /* 59179*/ /*SwitchType*/ 10, MVT::v4f32,// ->59191 |
| 29603 | /* 59181*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29604 | /* 59183*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_F32x4), 0, |
| 29605 | MVT::v4f32, 2/*#Ops*/, 0, 1, |
| 29606 | // Src: (fadd:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) - Complexity = 3 |
| 29607 | // Dst: (ADD_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 29608 | /* 59191*/ /*SwitchType*/ 10, MVT::v2f64,// ->59203 |
| 29609 | /* 59193*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29610 | /* 59195*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_F64x2), 0, |
| 29611 | MVT::v2f64, 2/*#Ops*/, 0, 1, |
| 29612 | // Src: (fadd:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) - Complexity = 3 |
| 29613 | // Dst: (ADD_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 29614 | /* 59203*/ 0, // EndSwitchType |
| 29615 | /* 59204*/ /*SwitchOpcode*/ 48, TARGET_VAL(ISD::FSUB),// ->59255 |
| 29616 | /* 59207*/ OPC_RecordChild0, // #0 = $lhs |
| 29617 | /* 59208*/ OPC_RecordChild1, // #1 = $rhs |
| 29618 | /* 59209*/ OPC_SwitchType /*4 cases */, 8, MVT::f32,// ->59220 |
| 29619 | /* 59212*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_F32), 0, |
| 29620 | MVT::f32, 2/*#Ops*/, 0, 1, |
| 29621 | // Src: (fsub:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) - Complexity = 3 |
| 29622 | // Dst: (SUB_F32:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 29623 | /* 59220*/ /*SwitchType*/ 8, MVT::f64,// ->59230 |
| 29624 | /* 59222*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_F64), 0, |
| 29625 | MVT::f64, 2/*#Ops*/, 0, 1, |
| 29626 | // Src: (fsub:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) - Complexity = 3 |
| 29627 | // Dst: (SUB_F64:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 29628 | /* 59230*/ /*SwitchType*/ 10, MVT::v4f32,// ->59242 |
| 29629 | /* 59232*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29630 | /* 59234*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_F32x4), 0, |
| 29631 | MVT::v4f32, 2/*#Ops*/, 0, 1, |
| 29632 | // Src: (fsub:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) - Complexity = 3 |
| 29633 | // Dst: (SUB_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 29634 | /* 59242*/ /*SwitchType*/ 10, MVT::v2f64,// ->59254 |
| 29635 | /* 59244*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29636 | /* 59246*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SUB_F64x2), 0, |
| 29637 | MVT::v2f64, 2/*#Ops*/, 0, 1, |
| 29638 | // Src: (fsub:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) - Complexity = 3 |
| 29639 | // Dst: (SUB_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 29640 | /* 59254*/ 0, // EndSwitchType |
| 29641 | /* 59255*/ /*SwitchOpcode*/ 48, TARGET_VAL(ISD::FMUL),// ->59306 |
| 29642 | /* 59258*/ OPC_RecordChild0, // #0 = $lhs |
| 29643 | /* 59259*/ OPC_RecordChild1, // #1 = $rhs |
| 29644 | /* 59260*/ OPC_SwitchType /*4 cases */, 8, MVT::f32,// ->59271 |
| 29645 | /* 59263*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MUL_F32), 0, |
| 29646 | MVT::f32, 2/*#Ops*/, 0, 1, |
| 29647 | // Src: (fmul:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) - Complexity = 3 |
| 29648 | // Dst: (MUL_F32:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 29649 | /* 59271*/ /*SwitchType*/ 8, MVT::f64,// ->59281 |
| 29650 | /* 59273*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MUL_F64), 0, |
| 29651 | MVT::f64, 2/*#Ops*/, 0, 1, |
| 29652 | // Src: (fmul:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) - Complexity = 3 |
| 29653 | // Dst: (MUL_F64:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 29654 | /* 59281*/ /*SwitchType*/ 10, MVT::v4f32,// ->59293 |
| 29655 | /* 59283*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29656 | /* 59285*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MUL_F32x4), 0, |
| 29657 | MVT::v4f32, 2/*#Ops*/, 0, 1, |
| 29658 | // Src: (fmul:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) - Complexity = 3 |
| 29659 | // Dst: (MUL_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 29660 | /* 59293*/ /*SwitchType*/ 10, MVT::v2f64,// ->59305 |
| 29661 | /* 59295*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29662 | /* 59297*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MUL_F64x2), 0, |
| 29663 | MVT::v2f64, 2/*#Ops*/, 0, 1, |
| 29664 | // Src: (fmul:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) - Complexity = 3 |
| 29665 | // Dst: (MUL_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 29666 | /* 59305*/ 0, // EndSwitchType |
| 29667 | /* 59306*/ /*SwitchOpcode*/ 48, TARGET_VAL(ISD::FDIV),// ->59357 |
| 29668 | /* 59309*/ OPC_RecordChild0, // #0 = $lhs |
| 29669 | /* 59310*/ OPC_RecordChild1, // #1 = $rhs |
| 29670 | /* 59311*/ OPC_SwitchType /*4 cases */, 8, MVT::f32,// ->59322 |
| 29671 | /* 59314*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::DIV_F32), 0, |
| 29672 | MVT::f32, 2/*#Ops*/, 0, 1, |
| 29673 | // Src: (fdiv:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) - Complexity = 3 |
| 29674 | // Dst: (DIV_F32:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 29675 | /* 59322*/ /*SwitchType*/ 8, MVT::f64,// ->59332 |
| 29676 | /* 59324*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::DIV_F64), 0, |
| 29677 | MVT::f64, 2/*#Ops*/, 0, 1, |
| 29678 | // Src: (fdiv:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) - Complexity = 3 |
| 29679 | // Dst: (DIV_F64:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 29680 | /* 59332*/ /*SwitchType*/ 10, MVT::v4f32,// ->59344 |
| 29681 | /* 59334*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29682 | /* 59336*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::DIV_F32x4), 0, |
| 29683 | MVT::v4f32, 2/*#Ops*/, 0, 1, |
| 29684 | // Src: (fdiv:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) - Complexity = 3 |
| 29685 | // Dst: (DIV_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 29686 | /* 59344*/ /*SwitchType*/ 10, MVT::v2f64,// ->59356 |
| 29687 | /* 59346*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29688 | /* 59348*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::DIV_F64x2), 0, |
| 29689 | MVT::v2f64, 2/*#Ops*/, 0, 1, |
| 29690 | // Src: (fdiv:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) - Complexity = 3 |
| 29691 | // Dst: (DIV_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 29692 | /* 59356*/ 0, // EndSwitchType |
| 29693 | /* 59357*/ /*SwitchOpcode*/ 43, TARGET_VAL(ISD::FSQRT),// ->59403 |
| 29694 | /* 59360*/ OPC_RecordChild0, // #0 = $src |
| 29695 | /* 59361*/ OPC_SwitchType /*4 cases */, 7, MVT::f32,// ->59371 |
| 29696 | /* 59364*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SQRT_F32), 0, |
| 29697 | MVT::f32, 1/*#Ops*/, 0, |
| 29698 | // Src: (fsqrt:{ *:[f32] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29699 | // Dst: (SQRT_F32:{ *:[f32] } F32:{ *:[f32] }:$src) |
| 29700 | /* 59371*/ /*SwitchType*/ 7, MVT::f64,// ->59380 |
| 29701 | /* 59373*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SQRT_F64), 0, |
| 29702 | MVT::f64, 1/*#Ops*/, 0, |
| 29703 | // Src: (fsqrt:{ *:[f64] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29704 | // Dst: (SQRT_F64:{ *:[f64] } F64:{ *:[f64] }:$src) |
| 29705 | /* 59380*/ /*SwitchType*/ 9, MVT::v4f32,// ->59391 |
| 29706 | /* 59382*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29707 | /* 59384*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SQRT_F32x4), 0, |
| 29708 | MVT::v4f32, 1/*#Ops*/, 0, |
| 29709 | // Src: (fsqrt:{ *:[v4f32] } V128:{ *:[v4f32] }:$v) - Complexity = 3 |
| 29710 | // Dst: (SQRT_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$v) |
| 29711 | /* 59391*/ /*SwitchType*/ 9, MVT::v2f64,// ->59402 |
| 29712 | /* 59393*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29713 | /* 59395*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SQRT_F64x2), 0, |
| 29714 | MVT::v2f64, 1/*#Ops*/, 0, |
| 29715 | // Src: (fsqrt:{ *:[v2f64] } V128:{ *:[v2f64] }:$v) - Complexity = 3 |
| 29716 | // Dst: (SQRT_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$v) |
| 29717 | /* 59402*/ 0, // EndSwitchType |
| 29718 | /* 59403*/ /*SwitchOpcode*/ 43, TARGET_VAL(ISD::FABS),// ->59449 |
| 29719 | /* 59406*/ OPC_RecordChild0, // #0 = $src |
| 29720 | /* 59407*/ OPC_SwitchType /*4 cases */, 7, MVT::f32,// ->59417 |
| 29721 | /* 59410*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ABS_F32), 0, |
| 29722 | MVT::f32, 1/*#Ops*/, 0, |
| 29723 | // Src: (fabs:{ *:[f32] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29724 | // Dst: (ABS_F32:{ *:[f32] } F32:{ *:[f32] }:$src) |
| 29725 | /* 59417*/ /*SwitchType*/ 7, MVT::f64,// ->59426 |
| 29726 | /* 59419*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ABS_F64), 0, |
| 29727 | MVT::f64, 1/*#Ops*/, 0, |
| 29728 | // Src: (fabs:{ *:[f64] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29729 | // Dst: (ABS_F64:{ *:[f64] } F64:{ *:[f64] }:$src) |
| 29730 | /* 59426*/ /*SwitchType*/ 9, MVT::v4f32,// ->59437 |
| 29731 | /* 59428*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29732 | /* 59430*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ABS_F32x4), 0, |
| 29733 | MVT::v4f32, 1/*#Ops*/, 0, |
| 29734 | // Src: (fabs:{ *:[v4f32] } V128:{ *:[v4f32] }:$v) - Complexity = 3 |
| 29735 | // Dst: (ABS_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$v) |
| 29736 | /* 59437*/ /*SwitchType*/ 9, MVT::v2f64,// ->59448 |
| 29737 | /* 59439*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29738 | /* 59441*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ABS_F64x2), 0, |
| 29739 | MVT::v2f64, 1/*#Ops*/, 0, |
| 29740 | // Src: (fabs:{ *:[v2f64] } V128:{ *:[v2f64] }:$v) - Complexity = 3 |
| 29741 | // Dst: (ABS_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$v) |
| 29742 | /* 59448*/ 0, // EndSwitchType |
| 29743 | /* 59449*/ /*SwitchOpcode*/ 43, TARGET_VAL(ISD::FNEG),// ->59495 |
| 29744 | /* 59452*/ OPC_RecordChild0, // #0 = $src |
| 29745 | /* 59453*/ OPC_SwitchType /*4 cases */, 7, MVT::f32,// ->59463 |
| 29746 | /* 59456*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEG_F32), 0, |
| 29747 | MVT::f32, 1/*#Ops*/, 0, |
| 29748 | // Src: (fneg:{ *:[f32] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29749 | // Dst: (NEG_F32:{ *:[f32] } F32:{ *:[f32] }:$src) |
| 29750 | /* 59463*/ /*SwitchType*/ 7, MVT::f64,// ->59472 |
| 29751 | /* 59465*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEG_F64), 0, |
| 29752 | MVT::f64, 1/*#Ops*/, 0, |
| 29753 | // Src: (fneg:{ *:[f64] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29754 | // Dst: (NEG_F64:{ *:[f64] } F64:{ *:[f64] }:$src) |
| 29755 | /* 59472*/ /*SwitchType*/ 9, MVT::v4f32,// ->59483 |
| 29756 | /* 59474*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29757 | /* 59476*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEG_F32x4), 0, |
| 29758 | MVT::v4f32, 1/*#Ops*/, 0, |
| 29759 | // Src: (fneg:{ *:[v4f32] } V128:{ *:[v4f32] }:$v) - Complexity = 3 |
| 29760 | // Dst: (NEG_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$v) |
| 29761 | /* 59483*/ /*SwitchType*/ 9, MVT::v2f64,// ->59494 |
| 29762 | /* 59485*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29763 | /* 59487*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEG_F64x2), 0, |
| 29764 | MVT::v2f64, 1/*#Ops*/, 0, |
| 29765 | // Src: (fneg:{ *:[v2f64] } V128:{ *:[v2f64] }:$v) - Complexity = 3 |
| 29766 | // Dst: (NEG_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$v) |
| 29767 | /* 59494*/ 0, // EndSwitchType |
| 29768 | /* 59495*/ /*SwitchOpcode*/ 68, TARGET_VAL(ISD::FCOPYSIGN),// ->59566 |
| 29769 | /* 59498*/ OPC_RecordChild0, // #0 = $lhs |
| 29770 | /* 59499*/ OPC_RecordChild1, // #1 = $rhs |
| 29771 | /* 59500*/ OPC_Scope, 31, /*->59533*/ // 2 children in Scope |
| 29772 | /* 59502*/ OPC_CheckChild1Type, MVT::f32, |
| 29773 | /* 59504*/ OPC_SwitchType /*2 cases */, 8, MVT::f32,// ->59515 |
| 29774 | /* 59507*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::COPYSIGN_F32), 0, |
| 29775 | MVT::f32, 2/*#Ops*/, 0, 1, |
| 29776 | // Src: (fcopysign:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) - Complexity = 3 |
| 29777 | // Dst: (COPYSIGN_F32:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 29778 | /* 59515*/ /*SwitchType*/ 15, MVT::f64,// ->59532 |
| 29779 | /* 59517*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::F64_PROMOTE_F32), 0, |
| 29780 | MVT::f64, 1/*#Ops*/, 1, // Results = #2 |
| 29781 | /* 59524*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::COPYSIGN_F64), 0, |
| 29782 | MVT::f64, 2/*#Ops*/, 0, 2, |
| 29783 | // Src: (fcopysign:{ *:[f64] } F64:{ *:[f64] }:$lhs, F32:{ *:[f32] }:$rhs) - Complexity = 3 |
| 29784 | // Dst: (COPYSIGN_F64:{ *:[f64] } F64:{ *:[f64] }:$lhs, (F64_PROMOTE_F32:{ *:[f64] } F32:{ *:[f32] }:$rhs)) |
| 29785 | /* 59532*/ 0, // EndSwitchType |
| 29786 | /* 59533*/ /*Scope*/ 31, /*->59565*/ |
| 29787 | /* 59534*/ OPC_CheckChild1Type, MVT::f64, |
| 29788 | /* 59536*/ OPC_SwitchType /*2 cases */, 8, MVT::f64,// ->59547 |
| 29789 | /* 59539*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::COPYSIGN_F64), 0, |
| 29790 | MVT::f64, 2/*#Ops*/, 0, 1, |
| 29791 | // Src: (fcopysign:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) - Complexity = 3 |
| 29792 | // Dst: (COPYSIGN_F64:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 29793 | /* 59547*/ /*SwitchType*/ 15, MVT::f32,// ->59564 |
| 29794 | /* 59549*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::F32_DEMOTE_F64), 0, |
| 29795 | MVT::f32, 1/*#Ops*/, 1, // Results = #2 |
| 29796 | /* 59556*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::COPYSIGN_F32), 0, |
| 29797 | MVT::f32, 2/*#Ops*/, 0, 2, |
| 29798 | // Src: (fcopysign:{ *:[f32] } F32:{ *:[f32] }:$lhs, F64:{ *:[f64] }:$rhs) - Complexity = 3 |
| 29799 | // Dst: (COPYSIGN_F32:{ *:[f32] } F32:{ *:[f32] }:$lhs, (F32_DEMOTE_F64:{ *:[f32] } F64:{ *:[f64] }:$rhs)) |
| 29800 | /* 59564*/ 0, // EndSwitchType |
| 29801 | /* 59565*/ 0, /*End of Scope*/ |
| 29802 | /* 59566*/ /*SwitchOpcode*/ 48, TARGET_VAL(ISD::FMINIMUM),// ->59617 |
| 29803 | /* 59569*/ OPC_RecordChild0, // #0 = $lhs |
| 29804 | /* 59570*/ OPC_RecordChild1, // #1 = $rhs |
| 29805 | /* 59571*/ OPC_SwitchType /*4 cases */, 8, MVT::f32,// ->59582 |
| 29806 | /* 59574*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MIN_F32), 0, |
| 29807 | MVT::f32, 2/*#Ops*/, 0, 1, |
| 29808 | // Src: (fminimum:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) - Complexity = 3 |
| 29809 | // Dst: (MIN_F32:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 29810 | /* 59582*/ /*SwitchType*/ 8, MVT::f64,// ->59592 |
| 29811 | /* 59584*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MIN_F64), 0, |
| 29812 | MVT::f64, 2/*#Ops*/, 0, 1, |
| 29813 | // Src: (fminimum:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) - Complexity = 3 |
| 29814 | // Dst: (MIN_F64:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 29815 | /* 59592*/ /*SwitchType*/ 10, MVT::v4f32,// ->59604 |
| 29816 | /* 59594*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29817 | /* 59596*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MIN_F32x4), 0, |
| 29818 | MVT::v4f32, 2/*#Ops*/, 0, 1, |
| 29819 | // Src: (fminimum:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) - Complexity = 3 |
| 29820 | // Dst: (MIN_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 29821 | /* 59604*/ /*SwitchType*/ 10, MVT::v2f64,// ->59616 |
| 29822 | /* 59606*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29823 | /* 59608*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MIN_F64x2), 0, |
| 29824 | MVT::v2f64, 2/*#Ops*/, 0, 1, |
| 29825 | // Src: (fminimum:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) - Complexity = 3 |
| 29826 | // Dst: (MIN_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 29827 | /* 59616*/ 0, // EndSwitchType |
| 29828 | /* 59617*/ /*SwitchOpcode*/ 48, TARGET_VAL(ISD::FMAXIMUM),// ->59668 |
| 29829 | /* 59620*/ OPC_RecordChild0, // #0 = $lhs |
| 29830 | /* 59621*/ OPC_RecordChild1, // #1 = $rhs |
| 29831 | /* 59622*/ OPC_SwitchType /*4 cases */, 8, MVT::f32,// ->59633 |
| 29832 | /* 59625*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MAX_F32), 0, |
| 29833 | MVT::f32, 2/*#Ops*/, 0, 1, |
| 29834 | // Src: (fmaximum:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) - Complexity = 3 |
| 29835 | // Dst: (MAX_F32:{ *:[f32] } F32:{ *:[f32] }:$lhs, F32:{ *:[f32] }:$rhs) |
| 29836 | /* 59633*/ /*SwitchType*/ 8, MVT::f64,// ->59643 |
| 29837 | /* 59635*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MAX_F64), 0, |
| 29838 | MVT::f64, 2/*#Ops*/, 0, 1, |
| 29839 | // Src: (fmaximum:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) - Complexity = 3 |
| 29840 | // Dst: (MAX_F64:{ *:[f64] } F64:{ *:[f64] }:$lhs, F64:{ *:[f64] }:$rhs) |
| 29841 | /* 59643*/ /*SwitchType*/ 10, MVT::v4f32,// ->59655 |
| 29842 | /* 59645*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29843 | /* 59647*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MAX_F32x4), 0, |
| 29844 | MVT::v4f32, 2/*#Ops*/, 0, 1, |
| 29845 | // Src: (fmaximum:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) - Complexity = 3 |
| 29846 | // Dst: (MAX_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$lhs, V128:{ *:[v4f32] }:$rhs) |
| 29847 | /* 59655*/ /*SwitchType*/ 10, MVT::v2f64,// ->59667 |
| 29848 | /* 59657*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 29849 | /* 59659*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MAX_F64x2), 0, |
| 29850 | MVT::v2f64, 2/*#Ops*/, 0, 1, |
| 29851 | // Src: (fmaximum:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) - Complexity = 3 |
| 29852 | // Dst: (MAX_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$lhs, V128:{ *:[v2f64] }:$rhs) |
| 29853 | /* 59667*/ 0, // EndSwitchType |
| 29854 | /* 59668*/ /*SwitchOpcode*/ 21, TARGET_VAL(ISD::FCEIL),// ->59692 |
| 29855 | /* 59671*/ OPC_RecordChild0, // #0 = $src |
| 29856 | /* 59672*/ OPC_SwitchType /*2 cases */, 7, MVT::f32,// ->59682 |
| 29857 | /* 59675*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CEIL_F32), 0, |
| 29858 | MVT::f32, 1/*#Ops*/, 0, |
| 29859 | // Src: (fceil:{ *:[f32] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29860 | // Dst: (CEIL_F32:{ *:[f32] } F32:{ *:[f32] }:$src) |
| 29861 | /* 59682*/ /*SwitchType*/ 7, MVT::f64,// ->59691 |
| 29862 | /* 59684*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CEIL_F64), 0, |
| 29863 | MVT::f64, 1/*#Ops*/, 0, |
| 29864 | // Src: (fceil:{ *:[f64] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29865 | // Dst: (CEIL_F64:{ *:[f64] } F64:{ *:[f64] }:$src) |
| 29866 | /* 59691*/ 0, // EndSwitchType |
| 29867 | /* 59692*/ /*SwitchOpcode*/ 21, TARGET_VAL(ISD::FFLOOR),// ->59716 |
| 29868 | /* 59695*/ OPC_RecordChild0, // #0 = $src |
| 29869 | /* 59696*/ OPC_SwitchType /*2 cases */, 7, MVT::f32,// ->59706 |
| 29870 | /* 59699*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::FLOOR_F32), 0, |
| 29871 | MVT::f32, 1/*#Ops*/, 0, |
| 29872 | // Src: (ffloor:{ *:[f32] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29873 | // Dst: (FLOOR_F32:{ *:[f32] } F32:{ *:[f32] }:$src) |
| 29874 | /* 59706*/ /*SwitchType*/ 7, MVT::f64,// ->59715 |
| 29875 | /* 59708*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::FLOOR_F64), 0, |
| 29876 | MVT::f64, 1/*#Ops*/, 0, |
| 29877 | // Src: (ffloor:{ *:[f64] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29878 | // Dst: (FLOOR_F64:{ *:[f64] } F64:{ *:[f64] }:$src) |
| 29879 | /* 59715*/ 0, // EndSwitchType |
| 29880 | /* 59716*/ /*SwitchOpcode*/ 21, TARGET_VAL(ISD::FTRUNC),// ->59740 |
| 29881 | /* 59719*/ OPC_RecordChild0, // #0 = $src |
| 29882 | /* 59720*/ OPC_SwitchType /*2 cases */, 7, MVT::f32,// ->59730 |
| 29883 | /* 59723*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::TRUNC_F32), 0, |
| 29884 | MVT::f32, 1/*#Ops*/, 0, |
| 29885 | // Src: (ftrunc:{ *:[f32] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29886 | // Dst: (TRUNC_F32:{ *:[f32] } F32:{ *:[f32] }:$src) |
| 29887 | /* 59730*/ /*SwitchType*/ 7, MVT::f64,// ->59739 |
| 29888 | /* 59732*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::TRUNC_F64), 0, |
| 29889 | MVT::f64, 1/*#Ops*/, 0, |
| 29890 | // Src: (ftrunc:{ *:[f64] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29891 | // Dst: (TRUNC_F64:{ *:[f64] } F64:{ *:[f64] }:$src) |
| 29892 | /* 59739*/ 0, // EndSwitchType |
| 29893 | /* 59740*/ /*SwitchOpcode*/ 21, TARGET_VAL(ISD::FNEARBYINT),// ->59764 |
| 29894 | /* 59743*/ OPC_RecordChild0, // #0 = $src |
| 29895 | /* 59744*/ OPC_SwitchType /*2 cases */, 7, MVT::f32,// ->59754 |
| 29896 | /* 59747*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEAREST_F32), 0, |
| 29897 | MVT::f32, 1/*#Ops*/, 0, |
| 29898 | // Src: (fnearbyint:{ *:[f32] } F32:{ *:[f32] }:$src) - Complexity = 3 |
| 29899 | // Dst: (NEAREST_F32:{ *:[f32] } F32:{ *:[f32] }:$src) |
| 29900 | /* 59754*/ /*SwitchType*/ 7, MVT::f64,// ->59763 |
| 29901 | /* 59756*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEAREST_F64), 0, |
| 29902 | MVT::f64, 1/*#Ops*/, 0, |
| 29903 | // Src: (fnearbyint:{ *:[f64] } F64:{ *:[f64] }:$src) - Complexity = 3 |
| 29904 | // Dst: (NEAREST_F64:{ *:[f64] } F64:{ *:[f64] }:$src) |
| 29905 | /* 59763*/ 0, // EndSwitchType |
| 29906 | /* 59764*/ /*SwitchOpcode*/ 21, TARGET_VAL(ISD::FRINT),// ->59788 |
| 29907 | /* 59767*/ OPC_RecordChild0, // #0 = $src |
| 29908 | /* 59768*/ OPC_SwitchType /*2 cases */, 7, MVT::f32,// ->59778 |
| 29909 | /* 59771*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEAREST_F32), 0, |
| 29910 | MVT::f32, 1/*#Ops*/, 0, |
| 29911 | // Src: (frint:{ *:[f32] } f32:{ *:[f32] }:$src) - Complexity = 3 |
| 29912 | // Dst: (NEAREST_F32:{ *:[f32] } f32:{ *:[f32] }:$src) |
| 29913 | /* 59778*/ /*SwitchType*/ 7, MVT::f64,// ->59787 |
| 29914 | /* 59780*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::NEAREST_F64), 0, |
| 29915 | MVT::f64, 1/*#Ops*/, 0, |
| 29916 | // Src: (frint:{ *:[f64] } f64:{ *:[f64] }:$src) - Complexity = 3 |
| 29917 | // Dst: (NEAREST_F64:{ *:[f64] } f64:{ *:[f64] }:$src) |
| 29918 | /* 59787*/ 0, // EndSwitchType |
| 29919 | /* 59788*/ /*SwitchOpcode*/ 103|128,2/*359*/, TARGET_VAL(WebAssemblyISD::VEC_SHR_U),// ->60151 |
| 29920 | /* 59792*/ OPC_Scope, 46|128,2/*302*/, /*->60097*/ // 2 children in Scope |
| 29921 | /* 59795*/ OPC_MoveChild0, |
| 29922 | /* 59796*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 29923 | /* 59799*/ OPC_MoveChild0, |
| 29924 | /* 59800*/ OPC_SwitchOpcode /*2 cases */, 11|128,1/*139*/, TARGET_VAL(ISD::ADD),// ->59944 |
| 29925 | /* 59805*/ OPC_RecordChild0, // #0 = $lhs |
| 29926 | /* 59806*/ OPC_RecordChild1, // #1 = $rhs |
| 29927 | /* 59807*/ OPC_CheckPredicate, 23, // Predicate_add_nuw |
| 29928 | /* 59809*/ OPC_MoveParent, |
| 29929 | /* 59810*/ OPC_MoveChild1, |
| 29930 | /* 59811*/ OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| 29931 | /* 59814*/ OPC_CheckChild0Integer, 1, |
| 29932 | /* 59816*/ OPC_CheckChild0Type, MVT::i32, |
| 29933 | /* 59818*/ OPC_CheckChild1Integer, 1, |
| 29934 | /* 59820*/ OPC_CheckChild1Type, MVT::i32, |
| 29935 | /* 59822*/ OPC_CheckChild2Integer, 1, |
| 29936 | /* 59824*/ OPC_CheckChild2Type, MVT::i32, |
| 29937 | /* 59826*/ OPC_CheckChild3Integer, 1, |
| 29938 | /* 59828*/ OPC_CheckChild3Type, MVT::i32, |
| 29939 | /* 59830*/ OPC_CheckChild4Integer, 1, |
| 29940 | /* 59832*/ OPC_CheckChild4Type, MVT::i32, |
| 29941 | /* 59834*/ OPC_MoveChild5, |
| 29942 | /* 59835*/ OPC_CheckInteger, 1, |
| 29943 | /* 59837*/ OPC_CheckType, MVT::i32, |
| 29944 | /* 59839*/ OPC_MoveParent, |
| 29945 | /* 59840*/ OPC_MoveChild6, |
| 29946 | /* 59841*/ OPC_CheckInteger, 1, |
| 29947 | /* 59843*/ OPC_CheckType, MVT::i32, |
| 29948 | /* 59845*/ OPC_MoveParent, |
| 29949 | /* 59846*/ OPC_MoveChild7, |
| 29950 | /* 59847*/ OPC_CheckInteger, 1, |
| 29951 | /* 59849*/ OPC_CheckType, MVT::i32, |
| 29952 | /* 59851*/ OPC_MoveParent, |
| 29953 | /* 59852*/ OPC_Scope, 72, /*->59926*/ // 2 children in Scope |
| 29954 | /* 59854*/ OPC_MoveChild, 8, |
| 29955 | /* 59856*/ OPC_CheckInteger, 1, |
| 29956 | /* 59858*/ OPC_CheckType, MVT::i32, |
| 29957 | /* 59860*/ OPC_MoveParent, |
| 29958 | /* 59861*/ OPC_MoveChild, 9, |
| 29959 | /* 59863*/ OPC_CheckInteger, 1, |
| 29960 | /* 59865*/ OPC_CheckType, MVT::i32, |
| 29961 | /* 59867*/ OPC_MoveParent, |
| 29962 | /* 59868*/ OPC_MoveChild, 10, |
| 29963 | /* 59870*/ OPC_CheckInteger, 1, |
| 29964 | /* 59872*/ OPC_CheckType, MVT::i32, |
| 29965 | /* 59874*/ OPC_MoveParent, |
| 29966 | /* 59875*/ OPC_MoveChild, 11, |
| 29967 | /* 59877*/ OPC_CheckInteger, 1, |
| 29968 | /* 59879*/ OPC_CheckType, MVT::i32, |
| 29969 | /* 59881*/ OPC_MoveParent, |
| 29970 | /* 59882*/ OPC_MoveChild, 12, |
| 29971 | /* 59884*/ OPC_CheckInteger, 1, |
| 29972 | /* 59886*/ OPC_CheckType, MVT::i32, |
| 29973 | /* 59888*/ OPC_MoveParent, |
| 29974 | /* 59889*/ OPC_MoveChild, 13, |
| 29975 | /* 59891*/ OPC_CheckInteger, 1, |
| 29976 | /* 59893*/ OPC_CheckType, MVT::i32, |
| 29977 | /* 59895*/ OPC_MoveParent, |
| 29978 | /* 59896*/ OPC_MoveChild, 14, |
| 29979 | /* 59898*/ OPC_CheckInteger, 1, |
| 29980 | /* 59900*/ OPC_CheckType, MVT::i32, |
| 29981 | /* 59902*/ OPC_MoveParent, |
| 29982 | /* 59903*/ OPC_MoveChild, 15, |
| 29983 | /* 59905*/ OPC_CheckInteger, 1, |
| 29984 | /* 59907*/ OPC_CheckType, MVT::i32, |
| 29985 | /* 59909*/ OPC_MoveParent, |
| 29986 | /* 59910*/ OPC_MoveParent, |
| 29987 | /* 59911*/ OPC_CheckPredicate, 23, // Predicate_add_nuw |
| 29988 | /* 59913*/ OPC_MoveParent, |
| 29989 | /* 59914*/ OPC_CheckChild1Integer, 1, |
| 29990 | /* 59916*/ OPC_CheckType, MVT::v16i8, |
| 29991 | /* 59918*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::AVGR_U_I8x16), 0, |
| 29992 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 29993 | // Src: (wasm_shr_u:{ *:[v16i8] } (add:{ *:[v16i8] } (add:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs)<<P:Predicate_add_nuw>>, (build_vector:{ *:[v16i8] } 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }))<<P:Predicate_add_nuw>>, 1:{ *:[i32] }) - Complexity = 99 |
| 29994 | // Dst: (AVGR_U_I8x16:{ *:[v16i8] } ?:{ *:[v16i8] }:$lhs, ?:{ *:[v16i8] }:$rhs) |
| 29995 | /* 59926*/ /*Scope*/ 16, /*->59943*/ |
| 29996 | /* 59927*/ OPC_MoveParent, |
| 29997 | /* 59928*/ OPC_CheckPredicate, 23, // Predicate_add_nuw |
| 29998 | /* 59930*/ OPC_MoveParent, |
| 29999 | /* 59931*/ OPC_CheckChild1Integer, 1, |
| 30000 | /* 59933*/ OPC_CheckType, MVT::v8i16, |
| 30001 | /* 59935*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::AVGR_U_I16x8), 0, |
| 30002 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 30003 | // Src: (wasm_shr_u:{ *:[v8i16] } (add:{ *:[v8i16] } (add:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs)<<P:Predicate_add_nuw>>, (build_vector:{ *:[v8i16] } 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }))<<P:Predicate_add_nuw>>, 1:{ *:[i32] }) - Complexity = 59 |
| 30004 | // Dst: (AVGR_U_I16x8:{ *:[v8i16] } ?:{ *:[v8i16] }:$lhs, ?:{ *:[v8i16] }:$rhs) |
| 30005 | /* 59943*/ 0, /*End of Scope*/ |
| 30006 | /* 59944*/ /*SwitchOpcode*/ 20|128,1/*148*/, TARGET_VAL(ISD::BUILD_VECTOR),// ->60096 |
| 30007 | /* 59948*/ OPC_CheckChild0Integer, 1, |
| 30008 | /* 59950*/ OPC_CheckChild0Type, MVT::i32, |
| 30009 | /* 59952*/ OPC_CheckChild1Integer, 1, |
| 30010 | /* 59954*/ OPC_CheckChild1Type, MVT::i32, |
| 30011 | /* 59956*/ OPC_CheckChild2Integer, 1, |
| 30012 | /* 59958*/ OPC_CheckChild2Type, MVT::i32, |
| 30013 | /* 59960*/ OPC_CheckChild3Integer, 1, |
| 30014 | /* 59962*/ OPC_CheckChild3Type, MVT::i32, |
| 30015 | /* 59964*/ OPC_CheckChild4Integer, 1, |
| 30016 | /* 59966*/ OPC_CheckChild4Type, MVT::i32, |
| 30017 | /* 59968*/ OPC_MoveChild5, |
| 30018 | /* 59969*/ OPC_CheckInteger, 1, |
| 30019 | /* 59971*/ OPC_CheckType, MVT::i32, |
| 30020 | /* 59973*/ OPC_MoveParent, |
| 30021 | /* 59974*/ OPC_MoveChild6, |
| 30022 | /* 59975*/ OPC_CheckInteger, 1, |
| 30023 | /* 59977*/ OPC_CheckType, MVT::i32, |
| 30024 | /* 59979*/ OPC_MoveParent, |
| 30025 | /* 59980*/ OPC_MoveChild7, |
| 30026 | /* 59981*/ OPC_CheckInteger, 1, |
| 30027 | /* 59983*/ OPC_CheckType, MVT::i32, |
| 30028 | /* 59985*/ OPC_MoveParent, |
| 30029 | /* 59986*/ OPC_Scope, 81, /*->60069*/ // 2 children in Scope |
| 30030 | /* 59988*/ OPC_MoveChild, 8, |
| 30031 | /* 59990*/ OPC_CheckInteger, 1, |
| 30032 | /* 59992*/ OPC_CheckType, MVT::i32, |
| 30033 | /* 59994*/ OPC_MoveParent, |
| 30034 | /* 59995*/ OPC_MoveChild, 9, |
| 30035 | /* 59997*/ OPC_CheckInteger, 1, |
| 30036 | /* 59999*/ OPC_CheckType, MVT::i32, |
| 30037 | /* 60001*/ OPC_MoveParent, |
| 30038 | /* 60002*/ OPC_MoveChild, 10, |
| 30039 | /* 60004*/ OPC_CheckInteger, 1, |
| 30040 | /* 60006*/ OPC_CheckType, MVT::i32, |
| 30041 | /* 60008*/ OPC_MoveParent, |
| 30042 | /* 60009*/ OPC_MoveChild, 11, |
| 30043 | /* 60011*/ OPC_CheckInteger, 1, |
| 30044 | /* 60013*/ OPC_CheckType, MVT::i32, |
| 30045 | /* 60015*/ OPC_MoveParent, |
| 30046 | /* 60016*/ OPC_MoveChild, 12, |
| 30047 | /* 60018*/ OPC_CheckInteger, 1, |
| 30048 | /* 60020*/ OPC_CheckType, MVT::i32, |
| 30049 | /* 60022*/ OPC_MoveParent, |
| 30050 | /* 60023*/ OPC_MoveChild, 13, |
| 30051 | /* 60025*/ OPC_CheckInteger, 1, |
| 30052 | /* 60027*/ OPC_CheckType, MVT::i32, |
| 30053 | /* 60029*/ OPC_MoveParent, |
| 30054 | /* 60030*/ OPC_MoveChild, 14, |
| 30055 | /* 60032*/ OPC_CheckInteger, 1, |
| 30056 | /* 60034*/ OPC_CheckType, MVT::i32, |
| 30057 | /* 60036*/ OPC_MoveParent, |
| 30058 | /* 60037*/ OPC_MoveChild, 15, |
| 30059 | /* 60039*/ OPC_CheckInteger, 1, |
| 30060 | /* 60041*/ OPC_CheckType, MVT::i32, |
| 30061 | /* 60043*/ OPC_MoveParent, |
| 30062 | /* 60044*/ OPC_MoveParent, |
| 30063 | /* 60045*/ OPC_MoveChild1, |
| 30064 | /* 60046*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 30065 | /* 60049*/ OPC_RecordChild0, // #0 = $lhs |
| 30066 | /* 60050*/ OPC_RecordChild1, // #1 = $rhs |
| 30067 | /* 60051*/ OPC_CheckPredicate, 23, // Predicate_add_nuw |
| 30068 | /* 60053*/ OPC_MoveParent, |
| 30069 | /* 60054*/ OPC_CheckPredicate, 23, // Predicate_add_nuw |
| 30070 | /* 60056*/ OPC_MoveParent, |
| 30071 | /* 60057*/ OPC_CheckChild1Integer, 1, |
| 30072 | /* 60059*/ OPC_CheckType, MVT::v16i8, |
| 30073 | /* 60061*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::AVGR_U_I8x16), 0, |
| 30074 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 30075 | // Src: (wasm_shr_u:{ *:[v16i8] } (add:{ *:[v16i8] } (build_vector:{ *:[v16i8] } 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }), (add:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs)<<P:Predicate_add_nuw>>)<<P:Predicate_add_nuw>>, 1:{ *:[i32] }) - Complexity = 99 |
| 30076 | // Dst: (AVGR_U_I8x16:{ *:[v16i8] } ?:{ *:[v16i8] }:$lhs, ?:{ *:[v16i8] }:$rhs) |
| 30077 | /* 60069*/ /*Scope*/ 25, /*->60095*/ |
| 30078 | /* 60070*/ OPC_MoveParent, |
| 30079 | /* 60071*/ OPC_MoveChild1, |
| 30080 | /* 60072*/ OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| 30081 | /* 60075*/ OPC_RecordChild0, // #0 = $lhs |
| 30082 | /* 60076*/ OPC_RecordChild1, // #1 = $rhs |
| 30083 | /* 60077*/ OPC_CheckPredicate, 23, // Predicate_add_nuw |
| 30084 | /* 60079*/ OPC_MoveParent, |
| 30085 | /* 60080*/ OPC_CheckPredicate, 23, // Predicate_add_nuw |
| 30086 | /* 60082*/ OPC_MoveParent, |
| 30087 | /* 60083*/ OPC_CheckChild1Integer, 1, |
| 30088 | /* 60085*/ OPC_CheckType, MVT::v8i16, |
| 30089 | /* 60087*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::AVGR_U_I16x8), 0, |
| 30090 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 30091 | // Src: (wasm_shr_u:{ *:[v8i16] } (add:{ *:[v8i16] } (build_vector:{ *:[v8i16] } 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }, 1:{ *:[i32] }), (add:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs)<<P:Predicate_add_nuw>>)<<P:Predicate_add_nuw>>, 1:{ *:[i32] }) - Complexity = 59 |
| 30092 | // Dst: (AVGR_U_I16x8:{ *:[v8i16] } ?:{ *:[v8i16] }:$lhs, ?:{ *:[v8i16] }:$rhs) |
| 30093 | /* 60095*/ 0, /*End of Scope*/ |
| 30094 | /* 60096*/ 0, // EndSwitchOpcode |
| 30095 | /* 60097*/ /*Scope*/ 52, /*->60150*/ |
| 30096 | /* 60098*/ OPC_RecordChild0, // #0 = $vec |
| 30097 | /* 60099*/ OPC_RecordChild1, // #1 = $x |
| 30098 | /* 60100*/ OPC_SwitchType /*4 cases */, 10, MVT::v16i8,// ->60113 |
| 30099 | /* 60103*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 30100 | /* 60105*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHR_U_I8x16), 0, |
| 30101 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 30102 | // Src: (wasm_shr_u:{ *:[v16i8] } V128:{ *:[v16i8] }:$vec, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 30103 | // Dst: (SHR_U_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$vec, I32:{ *:[i32] }:$x) |
| 30104 | /* 60113*/ /*SwitchType*/ 10, MVT::v8i16,// ->60125 |
| 30105 | /* 60115*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 30106 | /* 60117*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHR_U_I16x8), 0, |
| 30107 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 30108 | // Src: (wasm_shr_u:{ *:[v8i16] } V128:{ *:[v8i16] }:$vec, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 30109 | // Dst: (SHR_U_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$vec, I32:{ *:[i32] }:$x) |
| 30110 | /* 60125*/ /*SwitchType*/ 10, MVT::v4i32,// ->60137 |
| 30111 | /* 60127*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 30112 | /* 60129*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHR_U_I32x4), 0, |
| 30113 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 30114 | // Src: (wasm_shr_u:{ *:[v4i32] } V128:{ *:[v4i32] }:$vec, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 30115 | // Dst: (SHR_U_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$vec, I32:{ *:[i32] }:$x) |
| 30116 | /* 60137*/ /*SwitchType*/ 10, MVT::v2i64,// ->60149 |
| 30117 | /* 60139*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 30118 | /* 60141*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHR_U_I64x2), 0, |
| 30119 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 30120 | // Src: (wasm_shr_u:{ *:[v2i64] } V128:{ *:[v2i64] }:$vec, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 30121 | // Dst: (SHR_U_I64x2:{ *:[v2i64] } V128:{ *:[v2i64] }:$vec, I32:{ *:[i32] }:$x) |
| 30122 | /* 60149*/ 0, // EndSwitchType |
| 30123 | /* 60150*/ 0, /*End of Scope*/ |
| 30124 | /* 60151*/ /*SwitchOpcode*/ 21|128,5/*661*/, TARGET_VAL(ISD::BUILD_VECTOR),// ->60816 |
| 30125 | /* 60155*/ OPC_RecordChild0, // #0 = $i0 |
| 30126 | /* 60156*/ OPC_Scope, 31|128,3/*415*/, /*->60574*/ // 6 children in Scope |
| 30127 | /* 60159*/ OPC_MoveChild0, |
| 30128 | /* 60160*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30129 | /* 60163*/ OPC_SwitchType /*2 cases */, 123|128,2/*379*/, MVT::i32,// ->60546 |
| 30130 | /* 60167*/ OPC_Scope, 91|128,1/*219*/, /*->60389*/ // 3 children in Scope |
| 30131 | /* 60170*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30132 | /* 60172*/ OPC_MoveParent, |
| 30133 | /* 60173*/ OPC_RecordChild1, // #1 = $i1 |
| 30134 | /* 60174*/ OPC_MoveChild1, |
| 30135 | /* 60175*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30136 | /* 60178*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30137 | /* 60180*/ OPC_CheckType, MVT::i32, |
| 30138 | /* 60182*/ OPC_MoveParent, |
| 30139 | /* 60183*/ OPC_RecordChild2, // #2 = $i2 |
| 30140 | /* 60184*/ OPC_MoveChild2, |
| 30141 | /* 60185*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30142 | /* 60188*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30143 | /* 60190*/ OPC_CheckType, MVT::i32, |
| 30144 | /* 60192*/ OPC_MoveParent, |
| 30145 | /* 60193*/ OPC_RecordChild3, // #3 = $i3 |
| 30146 | /* 60194*/ OPC_MoveChild3, |
| 30147 | /* 60195*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30148 | /* 60198*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30149 | /* 60200*/ OPC_CheckType, MVT::i32, |
| 30150 | /* 60202*/ OPC_MoveParent, |
| 30151 | /* 60203*/ OPC_RecordChild4, // #4 = $i4 |
| 30152 | /* 60204*/ OPC_MoveChild4, |
| 30153 | /* 60205*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30154 | /* 60208*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30155 | /* 60210*/ OPC_CheckType, MVT::i32, |
| 30156 | /* 60212*/ OPC_MoveParent, |
| 30157 | /* 60213*/ OPC_RecordChild5, // #5 = $i5 |
| 30158 | /* 60214*/ OPC_MoveChild5, |
| 30159 | /* 60215*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30160 | /* 60218*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30161 | /* 60220*/ OPC_CheckType, MVT::i32, |
| 30162 | /* 60222*/ OPC_MoveParent, |
| 30163 | /* 60223*/ OPC_RecordChild6, // #6 = $i6 |
| 30164 | /* 60224*/ OPC_MoveChild6, |
| 30165 | /* 60225*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30166 | /* 60228*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30167 | /* 60230*/ OPC_CheckType, MVT::i32, |
| 30168 | /* 60232*/ OPC_MoveParent, |
| 30169 | /* 60233*/ OPC_RecordChild7, // #7 = $i7 |
| 30170 | /* 60234*/ OPC_MoveChild7, |
| 30171 | /* 60235*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30172 | /* 60238*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30173 | /* 60240*/ OPC_CheckType, MVT::i32, |
| 30174 | /* 60242*/ OPC_MoveParent, |
| 30175 | /* 60243*/ OPC_MoveChild, 8, |
| 30176 | /* 60245*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30177 | /* 60248*/ OPC_RecordNode, // #8 = $i8 |
| 30178 | /* 60249*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30179 | /* 60251*/ OPC_CheckType, MVT::i32, |
| 30180 | /* 60253*/ OPC_MoveParent, |
| 30181 | /* 60254*/ OPC_MoveChild, 9, |
| 30182 | /* 60256*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30183 | /* 60259*/ OPC_RecordNode, // #9 = $i9 |
| 30184 | /* 60260*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30185 | /* 60262*/ OPC_CheckType, MVT::i32, |
| 30186 | /* 60264*/ OPC_MoveParent, |
| 30187 | /* 60265*/ OPC_MoveChild, 10, |
| 30188 | /* 60267*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30189 | /* 60270*/ OPC_RecordNode, // #10 = $iA |
| 30190 | /* 60271*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30191 | /* 60273*/ OPC_CheckType, MVT::i32, |
| 30192 | /* 60275*/ OPC_MoveParent, |
| 30193 | /* 60276*/ OPC_MoveChild, 11, |
| 30194 | /* 60278*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30195 | /* 60281*/ OPC_RecordNode, // #11 = $iB |
| 30196 | /* 60282*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30197 | /* 60284*/ OPC_CheckType, MVT::i32, |
| 30198 | /* 60286*/ OPC_MoveParent, |
| 30199 | /* 60287*/ OPC_MoveChild, 12, |
| 30200 | /* 60289*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30201 | /* 60292*/ OPC_RecordNode, // #12 = $iC |
| 30202 | /* 60293*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30203 | /* 60295*/ OPC_CheckType, MVT::i32, |
| 30204 | /* 60297*/ OPC_MoveParent, |
| 30205 | /* 60298*/ OPC_MoveChild, 13, |
| 30206 | /* 60300*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30207 | /* 60303*/ OPC_RecordNode, // #13 = $iD |
| 30208 | /* 60304*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30209 | /* 60306*/ OPC_CheckType, MVT::i32, |
| 30210 | /* 60308*/ OPC_MoveParent, |
| 30211 | /* 60309*/ OPC_MoveChild, 14, |
| 30212 | /* 60311*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30213 | /* 60314*/ OPC_RecordNode, // #14 = $iE |
| 30214 | /* 60315*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30215 | /* 60317*/ OPC_CheckType, MVT::i32, |
| 30216 | /* 60319*/ OPC_MoveParent, |
| 30217 | /* 60320*/ OPC_MoveChild, 15, |
| 30218 | /* 60322*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30219 | /* 60325*/ OPC_RecordNode, // #15 = $iF |
| 30220 | /* 60326*/ OPC_CheckPredicate, 24, // Predicate_ImmI8 |
| 30221 | /* 60328*/ OPC_CheckType, MVT::i32, |
| 30222 | /* 60330*/ OPC_MoveParent, |
| 30223 | /* 60331*/ OPC_CheckType, MVT::v16i8, |
| 30224 | /* 60333*/ OPC_CheckPatternPredicate, 17, // (Subtarget->hasUnimplementedSIMD128()) |
| 30225 | /* 60335*/ OPC_EmitConvertToTarget, 0, |
| 30226 | /* 60337*/ OPC_EmitConvertToTarget, 1, |
| 30227 | /* 60339*/ OPC_EmitConvertToTarget, 2, |
| 30228 | /* 60341*/ OPC_EmitConvertToTarget, 3, |
| 30229 | /* 60343*/ OPC_EmitConvertToTarget, 4, |
| 30230 | /* 60345*/ OPC_EmitConvertToTarget, 5, |
| 30231 | /* 60347*/ OPC_EmitConvertToTarget, 6, |
| 30232 | /* 60349*/ OPC_EmitConvertToTarget, 7, |
| 30233 | /* 60351*/ OPC_EmitConvertToTarget, 8, |
| 30234 | /* 60353*/ OPC_EmitConvertToTarget, 9, |
| 30235 | /* 60355*/ OPC_EmitConvertToTarget, 10, |
| 30236 | /* 60357*/ OPC_EmitConvertToTarget, 11, |
| 30237 | /* 60359*/ OPC_EmitConvertToTarget, 12, |
| 30238 | /* 60361*/ OPC_EmitConvertToTarget, 13, |
| 30239 | /* 60363*/ OPC_EmitConvertToTarget, 14, |
| 30240 | /* 60365*/ OPC_EmitConvertToTarget, 15, |
| 30241 | /* 60367*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_V128_I8x16), 0, |
| 30242 | MVT::v16i8, 16/*#Ops*/, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, |
| 30243 | // Src: (build_vector:{ *:[v16i8] } (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$i0, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$i1, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$i2, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$i3, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$i4, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$i5, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$i6, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$i7, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$i8, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$i9, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$iA, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$iB, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$iC, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$iD, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$iE, (imm:{ *:[i32] })<<P:Predicate_ImmI8>>:$iF) - Complexity = 67 |
| 30244 | // Dst: (CONST_V128_I8x16:{ *:[v16i8] } (imm:{ *:[i32] }):$i0, (imm:{ *:[i32] }):$i1, (imm:{ *:[i32] }):$i2, (imm:{ *:[i32] }):$i3, (imm:{ *:[i32] }):$i4, (imm:{ *:[i32] }):$i5, (imm:{ *:[i32] }):$i6, (imm:{ *:[i32] }):$i7, (imm:{ *:[i32] }):$i8, (imm:{ *:[i32] }):$i9, (imm:{ *:[i32] }):$iA, (imm:{ *:[i32] }):$iB, (imm:{ *:[i32] }):$iC, (imm:{ *:[i32] }):$iD, (imm:{ *:[i32] }):$iE, (imm:{ *:[i32] }):$iF) |
| 30245 | /* 60389*/ /*Scope*/ 107, /*->60497*/ |
| 30246 | /* 60390*/ OPC_CheckPredicate, 25, // Predicate_ImmI16 |
| 30247 | /* 60392*/ OPC_MoveParent, |
| 30248 | /* 60393*/ OPC_RecordChild1, // #1 = $i1 |
| 30249 | /* 60394*/ OPC_MoveChild1, |
| 30250 | /* 60395*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30251 | /* 60398*/ OPC_CheckPredicate, 25, // Predicate_ImmI16 |
| 30252 | /* 60400*/ OPC_CheckType, MVT::i32, |
| 30253 | /* 60402*/ OPC_MoveParent, |
| 30254 | /* 60403*/ OPC_RecordChild2, // #2 = $i2 |
| 30255 | /* 60404*/ OPC_MoveChild2, |
| 30256 | /* 60405*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30257 | /* 60408*/ OPC_CheckPredicate, 25, // Predicate_ImmI16 |
| 30258 | /* 60410*/ OPC_CheckType, MVT::i32, |
| 30259 | /* 60412*/ OPC_MoveParent, |
| 30260 | /* 60413*/ OPC_RecordChild3, // #3 = $i3 |
| 30261 | /* 60414*/ OPC_MoveChild3, |
| 30262 | /* 60415*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30263 | /* 60418*/ OPC_CheckPredicate, 25, // Predicate_ImmI16 |
| 30264 | /* 60420*/ OPC_CheckType, MVT::i32, |
| 30265 | /* 60422*/ OPC_MoveParent, |
| 30266 | /* 60423*/ OPC_RecordChild4, // #4 = $i4 |
| 30267 | /* 60424*/ OPC_MoveChild4, |
| 30268 | /* 60425*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30269 | /* 60428*/ OPC_CheckPredicate, 25, // Predicate_ImmI16 |
| 30270 | /* 60430*/ OPC_CheckType, MVT::i32, |
| 30271 | /* 60432*/ OPC_MoveParent, |
| 30272 | /* 60433*/ OPC_RecordChild5, // #5 = $i5 |
| 30273 | /* 60434*/ OPC_MoveChild5, |
| 30274 | /* 60435*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30275 | /* 60438*/ OPC_CheckPredicate, 25, // Predicate_ImmI16 |
| 30276 | /* 60440*/ OPC_CheckType, MVT::i32, |
| 30277 | /* 60442*/ OPC_MoveParent, |
| 30278 | /* 60443*/ OPC_RecordChild6, // #6 = $i6 |
| 30279 | /* 60444*/ OPC_MoveChild6, |
| 30280 | /* 60445*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30281 | /* 60448*/ OPC_CheckPredicate, 25, // Predicate_ImmI16 |
| 30282 | /* 60450*/ OPC_CheckType, MVT::i32, |
| 30283 | /* 60452*/ OPC_MoveParent, |
| 30284 | /* 60453*/ OPC_RecordChild7, // #7 = $i7 |
| 30285 | /* 60454*/ OPC_MoveChild7, |
| 30286 | /* 60455*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30287 | /* 60458*/ OPC_CheckPredicate, 25, // Predicate_ImmI16 |
| 30288 | /* 60460*/ OPC_CheckType, MVT::i32, |
| 30289 | /* 60462*/ OPC_MoveParent, |
| 30290 | /* 60463*/ OPC_CheckType, MVT::v8i16, |
| 30291 | /* 60465*/ OPC_CheckPatternPredicate, 17, // (Subtarget->hasUnimplementedSIMD128()) |
| 30292 | /* 60467*/ OPC_EmitConvertToTarget, 0, |
| 30293 | /* 60469*/ OPC_EmitConvertToTarget, 1, |
| 30294 | /* 60471*/ OPC_EmitConvertToTarget, 2, |
| 30295 | /* 60473*/ OPC_EmitConvertToTarget, 3, |
| 30296 | /* 60475*/ OPC_EmitConvertToTarget, 4, |
| 30297 | /* 60477*/ OPC_EmitConvertToTarget, 5, |
| 30298 | /* 60479*/ OPC_EmitConvertToTarget, 6, |
| 30299 | /* 60481*/ OPC_EmitConvertToTarget, 7, |
| 30300 | /* 60483*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_V128_I16x8), 0, |
| 30301 | MVT::v8i16, 8/*#Ops*/, 8, 9, 10, 11, 12, 13, 14, 15, |
| 30302 | // Src: (build_vector:{ *:[v8i16] } (imm:{ *:[i32] })<<P:Predicate_ImmI16>>:$i0, (imm:{ *:[i32] })<<P:Predicate_ImmI16>>:$i1, (imm:{ *:[i32] })<<P:Predicate_ImmI16>>:$i2, (imm:{ *:[i32] })<<P:Predicate_ImmI16>>:$i3, (imm:{ *:[i32] })<<P:Predicate_ImmI16>>:$i4, (imm:{ *:[i32] })<<P:Predicate_ImmI16>>:$i5, (imm:{ *:[i32] })<<P:Predicate_ImmI16>>:$i6, (imm:{ *:[i32] })<<P:Predicate_ImmI16>>:$i7) - Complexity = 35 |
| 30303 | // Dst: (CONST_V128_I16x8:{ *:[v8i16] } (imm:{ *:[i32] }):$i0, (imm:{ *:[i32] }):$i1, (imm:{ *:[i32] }):$i2, (imm:{ *:[i32] }):$i3, (imm:{ *:[i32] }):$i4, (imm:{ *:[i32] }):$i5, (imm:{ *:[i32] }):$i6, (imm:{ *:[i32] }):$i7) |
| 30304 | /* 60497*/ /*Scope*/ 47, /*->60545*/ |
| 30305 | /* 60498*/ OPC_MoveParent, |
| 30306 | /* 60499*/ OPC_RecordChild1, // #1 = $i1 |
| 30307 | /* 60500*/ OPC_MoveChild1, |
| 30308 | /* 60501*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30309 | /* 60504*/ OPC_CheckType, MVT::i32, |
| 30310 | /* 60506*/ OPC_MoveParent, |
| 30311 | /* 60507*/ OPC_RecordChild2, // #2 = $i2 |
| 30312 | /* 60508*/ OPC_MoveChild2, |
| 30313 | /* 60509*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30314 | /* 60512*/ OPC_CheckType, MVT::i32, |
| 30315 | /* 60514*/ OPC_MoveParent, |
| 30316 | /* 60515*/ OPC_RecordChild3, // #3 = $i3 |
| 30317 | /* 60516*/ OPC_MoveChild3, |
| 30318 | /* 60517*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30319 | /* 60520*/ OPC_CheckType, MVT::i32, |
| 30320 | /* 60522*/ OPC_MoveParent, |
| 30321 | /* 60523*/ OPC_CheckType, MVT::v4i32, |
| 30322 | /* 60525*/ OPC_CheckPatternPredicate, 17, // (Subtarget->hasUnimplementedSIMD128()) |
| 30323 | /* 60527*/ OPC_EmitConvertToTarget, 0, |
| 30324 | /* 60529*/ OPC_EmitConvertToTarget, 1, |
| 30325 | /* 60531*/ OPC_EmitConvertToTarget, 2, |
| 30326 | /* 60533*/ OPC_EmitConvertToTarget, 3, |
| 30327 | /* 60535*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_V128_I32x4), 0, |
| 30328 | MVT::v4i32, 4/*#Ops*/, 4, 5, 6, 7, |
| 30329 | // Src: (build_vector:{ *:[v4i32] } (imm:{ *:[i32] }):$i0, (imm:{ *:[i32] }):$i1, (imm:{ *:[i32] }):$i2, (imm:{ *:[i32] }):$i3) - Complexity = 15 |
| 30330 | // Dst: (CONST_V128_I32x4:{ *:[v4i32] } (imm:{ *:[i32] }):$i0, (imm:{ *:[i32] }):$i1, (imm:{ *:[i32] }):$i2, (imm:{ *:[i32] }):$i3) |
| 30331 | /* 60545*/ 0, /*End of Scope*/ |
| 30332 | /* 60546*/ /*SwitchType*/ 25, MVT::i64,// ->60573 |
| 30333 | /* 60548*/ OPC_MoveParent, |
| 30334 | /* 60549*/ OPC_RecordChild1, // #1 = $i1 |
| 30335 | /* 60550*/ OPC_MoveChild1, |
| 30336 | /* 60551*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30337 | /* 60554*/ OPC_CheckType, MVT::i64, |
| 30338 | /* 60556*/ OPC_MoveParent, |
| 30339 | /* 60557*/ OPC_CheckType, MVT::v2i64, |
| 30340 | /* 60559*/ OPC_CheckPatternPredicate, 17, // (Subtarget->hasUnimplementedSIMD128()) |
| 30341 | /* 60561*/ OPC_EmitConvertToTarget, 0, |
| 30342 | /* 60563*/ OPC_EmitConvertToTarget, 1, |
| 30343 | /* 60565*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_V128_I64x2), 0, |
| 30344 | MVT::v2i64, 2/*#Ops*/, 2, 3, |
| 30345 | // Src: (build_vector:{ *:[v2i64] } (imm:{ *:[i64] }):$i0, (imm:{ *:[i64] }):$i1) - Complexity = 9 |
| 30346 | // Dst: (CONST_V128_I64x2:{ *:[v2i64] } (imm:{ *:[i64] }):$i0, (imm:{ *:[i64] }):$i1) |
| 30347 | /* 60573*/ 0, // EndSwitchType |
| 30348 | /* 60574*/ /*Scope*/ 105, /*->60680*/ |
| 30349 | /* 60575*/ OPC_CheckChild0Type, MVT::i32, |
| 30350 | /* 60577*/ OPC_CheckChild1Same, 0, |
| 30351 | /* 60579*/ OPC_CheckChild2Same, 0, |
| 30352 | /* 60581*/ OPC_CheckChild3Same, 0, |
| 30353 | /* 60583*/ OPC_Scope, 82, /*->60667*/ // 2 children in Scope |
| 30354 | /* 60585*/ OPC_MoveChild4, |
| 30355 | /* 60586*/ OPC_CheckSame, 0, |
| 30356 | /* 60588*/ OPC_MoveParent, |
| 30357 | /* 60589*/ OPC_MoveChild5, |
| 30358 | /* 60590*/ OPC_CheckSame, 0, |
| 30359 | /* 60592*/ OPC_MoveParent, |
| 30360 | /* 60593*/ OPC_MoveChild6, |
| 30361 | /* 60594*/ OPC_CheckSame, 0, |
| 30362 | /* 60596*/ OPC_MoveParent, |
| 30363 | /* 60597*/ OPC_MoveChild7, |
| 30364 | /* 60598*/ OPC_CheckSame, 0, |
| 30365 | /* 60600*/ OPC_MoveParent, |
| 30366 | /* 60601*/ OPC_Scope, 51, /*->60654*/ // 2 children in Scope |
| 30367 | /* 60603*/ OPC_MoveChild, 8, |
| 30368 | /* 60605*/ OPC_CheckSame, 0, |
| 30369 | /* 60607*/ OPC_MoveParent, |
| 30370 | /* 60608*/ OPC_MoveChild, 9, |
| 30371 | /* 60610*/ OPC_CheckSame, 0, |
| 30372 | /* 60612*/ OPC_MoveParent, |
| 30373 | /* 60613*/ OPC_MoveChild, 10, |
| 30374 | /* 60615*/ OPC_CheckSame, 0, |
| 30375 | /* 60617*/ OPC_MoveParent, |
| 30376 | /* 60618*/ OPC_MoveChild, 11, |
| 30377 | /* 60620*/ OPC_CheckSame, 0, |
| 30378 | /* 60622*/ OPC_MoveParent, |
| 30379 | /* 60623*/ OPC_MoveChild, 12, |
| 30380 | /* 60625*/ OPC_CheckSame, 0, |
| 30381 | /* 60627*/ OPC_MoveParent, |
| 30382 | /* 60628*/ OPC_MoveChild, 13, |
| 30383 | /* 60630*/ OPC_CheckSame, 0, |
| 30384 | /* 60632*/ OPC_MoveParent, |
| 30385 | /* 60633*/ OPC_MoveChild, 14, |
| 30386 | /* 60635*/ OPC_CheckSame, 0, |
| 30387 | /* 60637*/ OPC_MoveParent, |
| 30388 | /* 60638*/ OPC_MoveChild, 15, |
| 30389 | /* 60640*/ OPC_CheckSame, 0, |
| 30390 | /* 60642*/ OPC_MoveParent, |
| 30391 | /* 60643*/ OPC_CheckType, MVT::v16i8, |
| 30392 | /* 60645*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 30393 | /* 60647*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SPLAT_I8x16), 0, |
| 30394 | MVT::v16i8, 1/*#Ops*/, 0, |
| 30395 | // Src: (build_vector:{ *:[v16i8] } I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 30396 | // Dst: (SPLAT_I8x16:{ *:[v16i8] } I32:{ *:[i32] }:$x) |
| 30397 | /* 60654*/ /*Scope*/ 11, /*->60666*/ |
| 30398 | /* 60655*/ OPC_CheckType, MVT::v8i16, |
| 30399 | /* 60657*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 30400 | /* 60659*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SPLAT_I16x8), 0, |
| 30401 | MVT::v8i16, 1/*#Ops*/, 0, |
| 30402 | // Src: (build_vector:{ *:[v8i16] } I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 30403 | // Dst: (SPLAT_I16x8:{ *:[v8i16] } I32:{ *:[i32] }:$x) |
| 30404 | /* 60666*/ 0, /*End of Scope*/ |
| 30405 | /* 60667*/ /*Scope*/ 11, /*->60679*/ |
| 30406 | /* 60668*/ OPC_CheckType, MVT::v4i32, |
| 30407 | /* 60670*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 30408 | /* 60672*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 30409 | MVT::v4i32, 1/*#Ops*/, 0, |
| 30410 | // Src: (build_vector:{ *:[v4i32] } I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 30411 | // Dst: (SPLAT_I32x4:{ *:[v4i32] } I32:{ *:[i32] }:$x) |
| 30412 | /* 60679*/ 0, /*End of Scope*/ |
| 30413 | /* 60680*/ /*Scope*/ 15, /*->60696*/ |
| 30414 | /* 60681*/ OPC_CheckChild0Type, MVT::i64, |
| 30415 | /* 60683*/ OPC_CheckChild1Same, 0, |
| 30416 | /* 60685*/ OPC_CheckType, MVT::v2i64, |
| 30417 | /* 60687*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 30418 | /* 60689*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SPLAT_I64x2), 0, |
| 30419 | MVT::v2i64, 1/*#Ops*/, 0, |
| 30420 | // Src: (build_vector:{ *:[v2i64] } I64:{ *:[i64] }:$x, I64:{ *:[i64] }:$x) - Complexity = 3 |
| 30421 | // Dst: (SPLAT_I64x2:{ *:[v2i64] } I64:{ *:[i64] }:$x) |
| 30422 | /* 60696*/ /*Scope*/ 82, /*->60779*/ |
| 30423 | /* 60697*/ OPC_MoveChild0, |
| 30424 | /* 60698*/ OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP), |
| 30425 | /* 60701*/ OPC_SwitchType /*2 cases */, 47, MVT::f32,// ->60751 |
| 30426 | /* 60704*/ OPC_MoveParent, |
| 30427 | /* 60705*/ OPC_RecordChild1, // #1 = $i1 |
| 30428 | /* 60706*/ OPC_MoveChild1, |
| 30429 | /* 60707*/ OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP), |
| 30430 | /* 60710*/ OPC_CheckType, MVT::f32, |
| 30431 | /* 60712*/ OPC_MoveParent, |
| 30432 | /* 60713*/ OPC_RecordChild2, // #2 = $i2 |
| 30433 | /* 60714*/ OPC_MoveChild2, |
| 30434 | /* 60715*/ OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP), |
| 30435 | /* 60718*/ OPC_CheckType, MVT::f32, |
| 30436 | /* 60720*/ OPC_MoveParent, |
| 30437 | /* 60721*/ OPC_RecordChild3, // #3 = $i3 |
| 30438 | /* 60722*/ OPC_MoveChild3, |
| 30439 | /* 60723*/ OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP), |
| 30440 | /* 60726*/ OPC_CheckType, MVT::f32, |
| 30441 | /* 60728*/ OPC_MoveParent, |
| 30442 | /* 60729*/ OPC_CheckType, MVT::v4f32, |
| 30443 | /* 60731*/ OPC_CheckPatternPredicate, 17, // (Subtarget->hasUnimplementedSIMD128()) |
| 30444 | /* 60733*/ OPC_EmitConvertToTarget, 0, |
| 30445 | /* 60735*/ OPC_EmitConvertToTarget, 1, |
| 30446 | /* 60737*/ OPC_EmitConvertToTarget, 2, |
| 30447 | /* 60739*/ OPC_EmitConvertToTarget, 3, |
| 30448 | /* 60741*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_V128_F32x4), 0, |
| 30449 | MVT::v4f32, 4/*#Ops*/, 4, 5, 6, 7, |
| 30450 | // Src: (build_vector:{ *:[v4f32] } (fpimm:{ *:[f32] }):$i0, (fpimm:{ *:[f32] }):$i1, (fpimm:{ *:[f32] }):$i2, (fpimm:{ *:[f32] }):$i3) - Complexity = 15 |
| 30451 | // Dst: (CONST_V128_F32x4:{ *:[v4f32] } (fpimm:{ *:[f32] }):$i0, (fpimm:{ *:[f32] }):$i1, (fpimm:{ *:[f32] }):$i2, (fpimm:{ *:[f32] }):$i3) |
| 30452 | /* 60751*/ /*SwitchType*/ 25, MVT::f64,// ->60778 |
| 30453 | /* 60753*/ OPC_MoveParent, |
| 30454 | /* 60754*/ OPC_RecordChild1, // #1 = $i1 |
| 30455 | /* 60755*/ OPC_MoveChild1, |
| 30456 | /* 60756*/ OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP), |
| 30457 | /* 60759*/ OPC_CheckType, MVT::f64, |
| 30458 | /* 60761*/ OPC_MoveParent, |
| 30459 | /* 60762*/ OPC_CheckType, MVT::v2f64, |
| 30460 | /* 60764*/ OPC_CheckPatternPredicate, 17, // (Subtarget->hasUnimplementedSIMD128()) |
| 30461 | /* 60766*/ OPC_EmitConvertToTarget, 0, |
| 30462 | /* 60768*/ OPC_EmitConvertToTarget, 1, |
| 30463 | /* 60770*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::CONST_V128_F64x2), 0, |
| 30464 | MVT::v2f64, 2/*#Ops*/, 2, 3, |
| 30465 | // Src: (build_vector:{ *:[v2f64] } (fpimm:{ *:[f64] }):$i0, (fpimm:{ *:[f64] }):$i1) - Complexity = 9 |
| 30466 | // Dst: (CONST_V128_F64x2:{ *:[v2f64] } (fpimm:{ *:[f64] }):$i0, (fpimm:{ *:[f64] }):$i1) |
| 30467 | /* 60778*/ 0, // EndSwitchType |
| 30468 | /* 60779*/ /*Scope*/ 19, /*->60799*/ |
| 30469 | /* 60780*/ OPC_CheckChild0Type, MVT::f32, |
| 30470 | /* 60782*/ OPC_CheckChild1Same, 0, |
| 30471 | /* 60784*/ OPC_CheckChild2Same, 0, |
| 30472 | /* 60786*/ OPC_CheckChild3Same, 0, |
| 30473 | /* 60788*/ OPC_CheckType, MVT::v4f32, |
| 30474 | /* 60790*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 30475 | /* 60792*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SPLAT_F32x4), 0, |
| 30476 | MVT::v4f32, 1/*#Ops*/, 0, |
| 30477 | // Src: (build_vector:{ *:[v4f32] } F32:{ *:[f32] }:$x, F32:{ *:[f32] }:$x, F32:{ *:[f32] }:$x, F32:{ *:[f32] }:$x) - Complexity = 3 |
| 30478 | // Dst: (SPLAT_F32x4:{ *:[v4f32] } F32:{ *:[f32] }:$x) |
| 30479 | /* 60799*/ /*Scope*/ 15, /*->60815*/ |
| 30480 | /* 60800*/ OPC_CheckChild0Type, MVT::f64, |
| 30481 | /* 60802*/ OPC_CheckChild1Same, 0, |
| 30482 | /* 60804*/ OPC_CheckType, MVT::v2f64, |
| 30483 | /* 60806*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 30484 | /* 60808*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SPLAT_F64x2), 0, |
| 30485 | MVT::v2f64, 1/*#Ops*/, 0, |
| 30486 | // Src: (build_vector:{ *:[v2f64] } F64:{ *:[f64] }:$x, F64:{ *:[f64] }:$x) - Complexity = 3 |
| 30487 | // Dst: (SPLAT_F64x2:{ *:[v2f64] } F64:{ *:[f64] }:$x) |
| 30488 | /* 60815*/ 0, /*End of Scope*/ |
| 30489 | /* 60816*/ /*SwitchOpcode*/ 5|128,11/*1413*/, TARGET_VAL(WebAssemblyISD::SHUFFLE),// ->62233 |
| 30490 | /* 60820*/ OPC_RecordChild0, // #0 = $x |
| 30491 | /* 60821*/ OPC_Scope, 105|128,1/*233*/, /*->61057*/ // 6 children in Scope |
| 30492 | /* 60824*/ OPC_CheckChild0Type, MVT::v16i8, |
| 30493 | /* 60826*/ OPC_RecordChild1, // #1 = $y |
| 30494 | /* 60827*/ OPC_CheckChild1Type, MVT::v16i8, |
| 30495 | /* 60829*/ OPC_RecordChild2, // #2 = $m0 |
| 30496 | /* 60830*/ OPC_MoveChild2, |
| 30497 | /* 60831*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30498 | /* 60834*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30499 | /* 60836*/ OPC_CheckType, MVT::i32, |
| 30500 | /* 60838*/ OPC_MoveParent, |
| 30501 | /* 60839*/ OPC_RecordChild3, // #3 = $m1 |
| 30502 | /* 60840*/ OPC_MoveChild3, |
| 30503 | /* 60841*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30504 | /* 60844*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30505 | /* 60846*/ OPC_CheckType, MVT::i32, |
| 30506 | /* 60848*/ OPC_MoveParent, |
| 30507 | /* 60849*/ OPC_RecordChild4, // #4 = $m2 |
| 30508 | /* 60850*/ OPC_MoveChild4, |
| 30509 | /* 60851*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30510 | /* 60854*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30511 | /* 60856*/ OPC_CheckType, MVT::i32, |
| 30512 | /* 60858*/ OPC_MoveParent, |
| 30513 | /* 60859*/ OPC_RecordChild5, // #5 = $m3 |
| 30514 | /* 60860*/ OPC_MoveChild5, |
| 30515 | /* 60861*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30516 | /* 60864*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30517 | /* 60866*/ OPC_CheckType, MVT::i32, |
| 30518 | /* 60868*/ OPC_MoveParent, |
| 30519 | /* 60869*/ OPC_RecordChild6, // #6 = $m4 |
| 30520 | /* 60870*/ OPC_MoveChild6, |
| 30521 | /* 60871*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30522 | /* 60874*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30523 | /* 60876*/ OPC_CheckType, MVT::i32, |
| 30524 | /* 60878*/ OPC_MoveParent, |
| 30525 | /* 60879*/ OPC_RecordChild7, // #7 = $m5 |
| 30526 | /* 60880*/ OPC_MoveChild7, |
| 30527 | /* 60881*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30528 | /* 60884*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30529 | /* 60886*/ OPC_CheckType, MVT::i32, |
| 30530 | /* 60888*/ OPC_MoveParent, |
| 30531 | /* 60889*/ OPC_MoveChild, 8, |
| 30532 | /* 60891*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30533 | /* 60894*/ OPC_RecordNode, // #8 = $m6 |
| 30534 | /* 60895*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30535 | /* 60897*/ OPC_CheckType, MVT::i32, |
| 30536 | /* 60899*/ OPC_MoveParent, |
| 30537 | /* 60900*/ OPC_MoveChild, 9, |
| 30538 | /* 60902*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30539 | /* 60905*/ OPC_RecordNode, // #9 = $m7 |
| 30540 | /* 60906*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30541 | /* 60908*/ OPC_CheckType, MVT::i32, |
| 30542 | /* 60910*/ OPC_MoveParent, |
| 30543 | /* 60911*/ OPC_MoveChild, 10, |
| 30544 | /* 60913*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30545 | /* 60916*/ OPC_RecordNode, // #10 = $m8 |
| 30546 | /* 60917*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30547 | /* 60919*/ OPC_CheckType, MVT::i32, |
| 30548 | /* 60921*/ OPC_MoveParent, |
| 30549 | /* 60922*/ OPC_MoveChild, 11, |
| 30550 | /* 60924*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30551 | /* 60927*/ OPC_RecordNode, // #11 = $m9 |
| 30552 | /* 60928*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30553 | /* 60930*/ OPC_CheckType, MVT::i32, |
| 30554 | /* 60932*/ OPC_MoveParent, |
| 30555 | /* 60933*/ OPC_MoveChild, 12, |
| 30556 | /* 60935*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30557 | /* 60938*/ OPC_RecordNode, // #12 = $mA |
| 30558 | /* 60939*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30559 | /* 60941*/ OPC_CheckType, MVT::i32, |
| 30560 | /* 60943*/ OPC_MoveParent, |
| 30561 | /* 60944*/ OPC_MoveChild, 13, |
| 30562 | /* 60946*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30563 | /* 60949*/ OPC_RecordNode, // #13 = $mB |
| 30564 | /* 60950*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30565 | /* 60952*/ OPC_CheckType, MVT::i32, |
| 30566 | /* 60954*/ OPC_MoveParent, |
| 30567 | /* 60955*/ OPC_MoveChild, 14, |
| 30568 | /* 60957*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30569 | /* 60960*/ OPC_RecordNode, // #14 = $mC |
| 30570 | /* 60961*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30571 | /* 60963*/ OPC_CheckType, MVT::i32, |
| 30572 | /* 60965*/ OPC_MoveParent, |
| 30573 | /* 60966*/ OPC_MoveChild, 15, |
| 30574 | /* 60968*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30575 | /* 60971*/ OPC_RecordNode, // #15 = $mD |
| 30576 | /* 60972*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30577 | /* 60974*/ OPC_CheckType, MVT::i32, |
| 30578 | /* 60976*/ OPC_MoveParent, |
| 30579 | /* 60977*/ OPC_MoveChild, 16, |
| 30580 | /* 60979*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30581 | /* 60982*/ OPC_RecordNode, // #16 = $mE |
| 30582 | /* 60983*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30583 | /* 60985*/ OPC_CheckType, MVT::i32, |
| 30584 | /* 60987*/ OPC_MoveParent, |
| 30585 | /* 60988*/ OPC_MoveChild, 17, |
| 30586 | /* 60990*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30587 | /* 60993*/ OPC_RecordNode, // #17 = $mF |
| 30588 | /* 60994*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30589 | /* 60996*/ OPC_CheckType, MVT::i32, |
| 30590 | /* 60998*/ OPC_MoveParent, |
| 30591 | /* 60999*/ OPC_CheckType, MVT::v16i8, |
| 30592 | /* 61001*/ OPC_EmitConvertToTarget, 2, |
| 30593 | /* 61003*/ OPC_EmitConvertToTarget, 3, |
| 30594 | /* 61005*/ OPC_EmitConvertToTarget, 4, |
| 30595 | /* 61007*/ OPC_EmitConvertToTarget, 5, |
| 30596 | /* 61009*/ OPC_EmitConvertToTarget, 6, |
| 30597 | /* 61011*/ OPC_EmitConvertToTarget, 7, |
| 30598 | /* 61013*/ OPC_EmitConvertToTarget, 8, |
| 30599 | /* 61015*/ OPC_EmitConvertToTarget, 9, |
| 30600 | /* 61017*/ OPC_EmitConvertToTarget, 10, |
| 30601 | /* 61019*/ OPC_EmitConvertToTarget, 11, |
| 30602 | /* 61021*/ OPC_EmitConvertToTarget, 12, |
| 30603 | /* 61023*/ OPC_EmitConvertToTarget, 13, |
| 30604 | /* 61025*/ OPC_EmitConvertToTarget, 14, |
| 30605 | /* 61027*/ OPC_EmitConvertToTarget, 15, |
| 30606 | /* 61029*/ OPC_EmitConvertToTarget, 16, |
| 30607 | /* 61031*/ OPC_EmitConvertToTarget, 17, |
| 30608 | /* 61033*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHUFFLE), 0, |
| 30609 | MVT::v16i8, 18/*#Ops*/, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, |
| 30610 | // Src: (wasm_shuffle:{ *:[v16i8] } V128:{ *:[v16i8] }:$x, V128:{ *:[v16i8] }:$y, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m0, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m1, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m2, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m3, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m4, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m5, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m6, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m7, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m8, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m9, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mA, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mB, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mC, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mD, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mE, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mF) - Complexity = 67 |
| 30611 | // Dst: (SHUFFLE:{ *:[v16i8] } ?:{ *:[v16i8] }:$x, ?:{ *:[v16i8] }:$y, (imm:{ *:[i32] }):$m0, (imm:{ *:[i32] }):$m1, (imm:{ *:[i32] }):$m2, (imm:{ *:[i32] }):$m3, (imm:{ *:[i32] }):$m4, (imm:{ *:[i32] }):$m5, (imm:{ *:[i32] }):$m6, (imm:{ *:[i32] }):$m7, (imm:{ *:[i32] }):$m8, (imm:{ *:[i32] }):$m9, (imm:{ *:[i32] }):$mA, (imm:{ *:[i32] }):$mB, (imm:{ *:[i32] }):$mC, (imm:{ *:[i32] }):$mD, (imm:{ *:[i32] }):$mE, (imm:{ *:[i32] }):$mF) |
| 30612 | /* 61057*/ /*Scope*/ 105|128,1/*233*/, /*->61292*/ |
| 30613 | /* 61059*/ OPC_CheckChild0Type, MVT::v8i16, |
| 30614 | /* 61061*/ OPC_RecordChild1, // #1 = $y |
| 30615 | /* 61062*/ OPC_CheckChild1Type, MVT::v8i16, |
| 30616 | /* 61064*/ OPC_RecordChild2, // #2 = $m0 |
| 30617 | /* 61065*/ OPC_MoveChild2, |
| 30618 | /* 61066*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30619 | /* 61069*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30620 | /* 61071*/ OPC_CheckType, MVT::i32, |
| 30621 | /* 61073*/ OPC_MoveParent, |
| 30622 | /* 61074*/ OPC_RecordChild3, // #3 = $m1 |
| 30623 | /* 61075*/ OPC_MoveChild3, |
| 30624 | /* 61076*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30625 | /* 61079*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30626 | /* 61081*/ OPC_CheckType, MVT::i32, |
| 30627 | /* 61083*/ OPC_MoveParent, |
| 30628 | /* 61084*/ OPC_RecordChild4, // #4 = $m2 |
| 30629 | /* 61085*/ OPC_MoveChild4, |
| 30630 | /* 61086*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30631 | /* 61089*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30632 | /* 61091*/ OPC_CheckType, MVT::i32, |
| 30633 | /* 61093*/ OPC_MoveParent, |
| 30634 | /* 61094*/ OPC_RecordChild5, // #5 = $m3 |
| 30635 | /* 61095*/ OPC_MoveChild5, |
| 30636 | /* 61096*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30637 | /* 61099*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30638 | /* 61101*/ OPC_CheckType, MVT::i32, |
| 30639 | /* 61103*/ OPC_MoveParent, |
| 30640 | /* 61104*/ OPC_RecordChild6, // #6 = $m4 |
| 30641 | /* 61105*/ OPC_MoveChild6, |
| 30642 | /* 61106*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30643 | /* 61109*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30644 | /* 61111*/ OPC_CheckType, MVT::i32, |
| 30645 | /* 61113*/ OPC_MoveParent, |
| 30646 | /* 61114*/ OPC_RecordChild7, // #7 = $m5 |
| 30647 | /* 61115*/ OPC_MoveChild7, |
| 30648 | /* 61116*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30649 | /* 61119*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30650 | /* 61121*/ OPC_CheckType, MVT::i32, |
| 30651 | /* 61123*/ OPC_MoveParent, |
| 30652 | /* 61124*/ OPC_MoveChild, 8, |
| 30653 | /* 61126*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30654 | /* 61129*/ OPC_RecordNode, // #8 = $m6 |
| 30655 | /* 61130*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30656 | /* 61132*/ OPC_CheckType, MVT::i32, |
| 30657 | /* 61134*/ OPC_MoveParent, |
| 30658 | /* 61135*/ OPC_MoveChild, 9, |
| 30659 | /* 61137*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30660 | /* 61140*/ OPC_RecordNode, // #9 = $m7 |
| 30661 | /* 61141*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30662 | /* 61143*/ OPC_CheckType, MVT::i32, |
| 30663 | /* 61145*/ OPC_MoveParent, |
| 30664 | /* 61146*/ OPC_MoveChild, 10, |
| 30665 | /* 61148*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30666 | /* 61151*/ OPC_RecordNode, // #10 = $m8 |
| 30667 | /* 61152*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30668 | /* 61154*/ OPC_CheckType, MVT::i32, |
| 30669 | /* 61156*/ OPC_MoveParent, |
| 30670 | /* 61157*/ OPC_MoveChild, 11, |
| 30671 | /* 61159*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30672 | /* 61162*/ OPC_RecordNode, // #11 = $m9 |
| 30673 | /* 61163*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30674 | /* 61165*/ OPC_CheckType, MVT::i32, |
| 30675 | /* 61167*/ OPC_MoveParent, |
| 30676 | /* 61168*/ OPC_MoveChild, 12, |
| 30677 | /* 61170*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30678 | /* 61173*/ OPC_RecordNode, // #12 = $mA |
| 30679 | /* 61174*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30680 | /* 61176*/ OPC_CheckType, MVT::i32, |
| 30681 | /* 61178*/ OPC_MoveParent, |
| 30682 | /* 61179*/ OPC_MoveChild, 13, |
| 30683 | /* 61181*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30684 | /* 61184*/ OPC_RecordNode, // #13 = $mB |
| 30685 | /* 61185*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30686 | /* 61187*/ OPC_CheckType, MVT::i32, |
| 30687 | /* 61189*/ OPC_MoveParent, |
| 30688 | /* 61190*/ OPC_MoveChild, 14, |
| 30689 | /* 61192*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30690 | /* 61195*/ OPC_RecordNode, // #14 = $mC |
| 30691 | /* 61196*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30692 | /* 61198*/ OPC_CheckType, MVT::i32, |
| 30693 | /* 61200*/ OPC_MoveParent, |
| 30694 | /* 61201*/ OPC_MoveChild, 15, |
| 30695 | /* 61203*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30696 | /* 61206*/ OPC_RecordNode, // #15 = $mD |
| 30697 | /* 61207*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30698 | /* 61209*/ OPC_CheckType, MVT::i32, |
| 30699 | /* 61211*/ OPC_MoveParent, |
| 30700 | /* 61212*/ OPC_MoveChild, 16, |
| 30701 | /* 61214*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30702 | /* 61217*/ OPC_RecordNode, // #16 = $mE |
| 30703 | /* 61218*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30704 | /* 61220*/ OPC_CheckType, MVT::i32, |
| 30705 | /* 61222*/ OPC_MoveParent, |
| 30706 | /* 61223*/ OPC_MoveChild, 17, |
| 30707 | /* 61225*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30708 | /* 61228*/ OPC_RecordNode, // #17 = $mF |
| 30709 | /* 61229*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30710 | /* 61231*/ OPC_CheckType, MVT::i32, |
| 30711 | /* 61233*/ OPC_MoveParent, |
| 30712 | /* 61234*/ OPC_CheckType, MVT::v8i16, |
| 30713 | /* 61236*/ OPC_EmitConvertToTarget, 2, |
| 30714 | /* 61238*/ OPC_EmitConvertToTarget, 3, |
| 30715 | /* 61240*/ OPC_EmitConvertToTarget, 4, |
| 30716 | /* 61242*/ OPC_EmitConvertToTarget, 5, |
| 30717 | /* 61244*/ OPC_EmitConvertToTarget, 6, |
| 30718 | /* 61246*/ OPC_EmitConvertToTarget, 7, |
| 30719 | /* 61248*/ OPC_EmitConvertToTarget, 8, |
| 30720 | /* 61250*/ OPC_EmitConvertToTarget, 9, |
| 30721 | /* 61252*/ OPC_EmitConvertToTarget, 10, |
| 30722 | /* 61254*/ OPC_EmitConvertToTarget, 11, |
| 30723 | /* 61256*/ OPC_EmitConvertToTarget, 12, |
| 30724 | /* 61258*/ OPC_EmitConvertToTarget, 13, |
| 30725 | /* 61260*/ OPC_EmitConvertToTarget, 14, |
| 30726 | /* 61262*/ OPC_EmitConvertToTarget, 15, |
| 30727 | /* 61264*/ OPC_EmitConvertToTarget, 16, |
| 30728 | /* 61266*/ OPC_EmitConvertToTarget, 17, |
| 30729 | /* 61268*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHUFFLE), 0, |
| 30730 | MVT::v8i16, 18/*#Ops*/, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, |
| 30731 | // Src: (wasm_shuffle:{ *:[v8i16] } V128:{ *:[v8i16] }:$x, V128:{ *:[v8i16] }:$y, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m0, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m1, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m2, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m3, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m4, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m5, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m6, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m7, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m8, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m9, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mA, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mB, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mC, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mD, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mE, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mF) - Complexity = 67 |
| 30732 | // Dst: (SHUFFLE:{ *:[v8i16] } ?:{ *:[v8i16] }:$x, ?:{ *:[v8i16] }:$y, (imm:{ *:[i32] }):$m0, (imm:{ *:[i32] }):$m1, (imm:{ *:[i32] }):$m2, (imm:{ *:[i32] }):$m3, (imm:{ *:[i32] }):$m4, (imm:{ *:[i32] }):$m5, (imm:{ *:[i32] }):$m6, (imm:{ *:[i32] }):$m7, (imm:{ *:[i32] }):$m8, (imm:{ *:[i32] }):$m9, (imm:{ *:[i32] }):$mA, (imm:{ *:[i32] }):$mB, (imm:{ *:[i32] }):$mC, (imm:{ *:[i32] }):$mD, (imm:{ *:[i32] }):$mE, (imm:{ *:[i32] }):$mF) |
| 30733 | /* 61292*/ /*Scope*/ 105|128,1/*233*/, /*->61527*/ |
| 30734 | /* 61294*/ OPC_CheckChild0Type, MVT::v4i32, |
| 30735 | /* 61296*/ OPC_RecordChild1, // #1 = $y |
| 30736 | /* 61297*/ OPC_CheckChild1Type, MVT::v4i32, |
| 30737 | /* 61299*/ OPC_RecordChild2, // #2 = $m0 |
| 30738 | /* 61300*/ OPC_MoveChild2, |
| 30739 | /* 61301*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30740 | /* 61304*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30741 | /* 61306*/ OPC_CheckType, MVT::i32, |
| 30742 | /* 61308*/ OPC_MoveParent, |
| 30743 | /* 61309*/ OPC_RecordChild3, // #3 = $m1 |
| 30744 | /* 61310*/ OPC_MoveChild3, |
| 30745 | /* 61311*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30746 | /* 61314*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30747 | /* 61316*/ OPC_CheckType, MVT::i32, |
| 30748 | /* 61318*/ OPC_MoveParent, |
| 30749 | /* 61319*/ OPC_RecordChild4, // #4 = $m2 |
| 30750 | /* 61320*/ OPC_MoveChild4, |
| 30751 | /* 61321*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30752 | /* 61324*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30753 | /* 61326*/ OPC_CheckType, MVT::i32, |
| 30754 | /* 61328*/ OPC_MoveParent, |
| 30755 | /* 61329*/ OPC_RecordChild5, // #5 = $m3 |
| 30756 | /* 61330*/ OPC_MoveChild5, |
| 30757 | /* 61331*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30758 | /* 61334*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30759 | /* 61336*/ OPC_CheckType, MVT::i32, |
| 30760 | /* 61338*/ OPC_MoveParent, |
| 30761 | /* 61339*/ OPC_RecordChild6, // #6 = $m4 |
| 30762 | /* 61340*/ OPC_MoveChild6, |
| 30763 | /* 61341*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30764 | /* 61344*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30765 | /* 61346*/ OPC_CheckType, MVT::i32, |
| 30766 | /* 61348*/ OPC_MoveParent, |
| 30767 | /* 61349*/ OPC_RecordChild7, // #7 = $m5 |
| 30768 | /* 61350*/ OPC_MoveChild7, |
| 30769 | /* 61351*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30770 | /* 61354*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30771 | /* 61356*/ OPC_CheckType, MVT::i32, |
| 30772 | /* 61358*/ OPC_MoveParent, |
| 30773 | /* 61359*/ OPC_MoveChild, 8, |
| 30774 | /* 61361*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30775 | /* 61364*/ OPC_RecordNode, // #8 = $m6 |
| 30776 | /* 61365*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30777 | /* 61367*/ OPC_CheckType, MVT::i32, |
| 30778 | /* 61369*/ OPC_MoveParent, |
| 30779 | /* 61370*/ OPC_MoveChild, 9, |
| 30780 | /* 61372*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30781 | /* 61375*/ OPC_RecordNode, // #9 = $m7 |
| 30782 | /* 61376*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30783 | /* 61378*/ OPC_CheckType, MVT::i32, |
| 30784 | /* 61380*/ OPC_MoveParent, |
| 30785 | /* 61381*/ OPC_MoveChild, 10, |
| 30786 | /* 61383*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30787 | /* 61386*/ OPC_RecordNode, // #10 = $m8 |
| 30788 | /* 61387*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30789 | /* 61389*/ OPC_CheckType, MVT::i32, |
| 30790 | /* 61391*/ OPC_MoveParent, |
| 30791 | /* 61392*/ OPC_MoveChild, 11, |
| 30792 | /* 61394*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30793 | /* 61397*/ OPC_RecordNode, // #11 = $m9 |
| 30794 | /* 61398*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30795 | /* 61400*/ OPC_CheckType, MVT::i32, |
| 30796 | /* 61402*/ OPC_MoveParent, |
| 30797 | /* 61403*/ OPC_MoveChild, 12, |
| 30798 | /* 61405*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30799 | /* 61408*/ OPC_RecordNode, // #12 = $mA |
| 30800 | /* 61409*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30801 | /* 61411*/ OPC_CheckType, MVT::i32, |
| 30802 | /* 61413*/ OPC_MoveParent, |
| 30803 | /* 61414*/ OPC_MoveChild, 13, |
| 30804 | /* 61416*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30805 | /* 61419*/ OPC_RecordNode, // #13 = $mB |
| 30806 | /* 61420*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30807 | /* 61422*/ OPC_CheckType, MVT::i32, |
| 30808 | /* 61424*/ OPC_MoveParent, |
| 30809 | /* 61425*/ OPC_MoveChild, 14, |
| 30810 | /* 61427*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30811 | /* 61430*/ OPC_RecordNode, // #14 = $mC |
| 30812 | /* 61431*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30813 | /* 61433*/ OPC_CheckType, MVT::i32, |
| 30814 | /* 61435*/ OPC_MoveParent, |
| 30815 | /* 61436*/ OPC_MoveChild, 15, |
| 30816 | /* 61438*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30817 | /* 61441*/ OPC_RecordNode, // #15 = $mD |
| 30818 | /* 61442*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30819 | /* 61444*/ OPC_CheckType, MVT::i32, |
| 30820 | /* 61446*/ OPC_MoveParent, |
| 30821 | /* 61447*/ OPC_MoveChild, 16, |
| 30822 | /* 61449*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30823 | /* 61452*/ OPC_RecordNode, // #16 = $mE |
| 30824 | /* 61453*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30825 | /* 61455*/ OPC_CheckType, MVT::i32, |
| 30826 | /* 61457*/ OPC_MoveParent, |
| 30827 | /* 61458*/ OPC_MoveChild, 17, |
| 30828 | /* 61460*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30829 | /* 61463*/ OPC_RecordNode, // #17 = $mF |
| 30830 | /* 61464*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30831 | /* 61466*/ OPC_CheckType, MVT::i32, |
| 30832 | /* 61468*/ OPC_MoveParent, |
| 30833 | /* 61469*/ OPC_CheckType, MVT::v4i32, |
| 30834 | /* 61471*/ OPC_EmitConvertToTarget, 2, |
| 30835 | /* 61473*/ OPC_EmitConvertToTarget, 3, |
| 30836 | /* 61475*/ OPC_EmitConvertToTarget, 4, |
| 30837 | /* 61477*/ OPC_EmitConvertToTarget, 5, |
| 30838 | /* 61479*/ OPC_EmitConvertToTarget, 6, |
| 30839 | /* 61481*/ OPC_EmitConvertToTarget, 7, |
| 30840 | /* 61483*/ OPC_EmitConvertToTarget, 8, |
| 30841 | /* 61485*/ OPC_EmitConvertToTarget, 9, |
| 30842 | /* 61487*/ OPC_EmitConvertToTarget, 10, |
| 30843 | /* 61489*/ OPC_EmitConvertToTarget, 11, |
| 30844 | /* 61491*/ OPC_EmitConvertToTarget, 12, |
| 30845 | /* 61493*/ OPC_EmitConvertToTarget, 13, |
| 30846 | /* 61495*/ OPC_EmitConvertToTarget, 14, |
| 30847 | /* 61497*/ OPC_EmitConvertToTarget, 15, |
| 30848 | /* 61499*/ OPC_EmitConvertToTarget, 16, |
| 30849 | /* 61501*/ OPC_EmitConvertToTarget, 17, |
| 30850 | /* 61503*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHUFFLE), 0, |
| 30851 | MVT::v4i32, 18/*#Ops*/, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, |
| 30852 | // Src: (wasm_shuffle:{ *:[v4i32] } V128:{ *:[v4i32] }:$x, V128:{ *:[v4i32] }:$y, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m0, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m1, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m2, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m3, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m4, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m5, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m6, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m7, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m8, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m9, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mA, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mB, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mC, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mD, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mE, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mF) - Complexity = 67 |
| 30853 | // Dst: (SHUFFLE:{ *:[v4i32] } ?:{ *:[v4i32] }:$x, ?:{ *:[v4i32] }:$y, (imm:{ *:[i32] }):$m0, (imm:{ *:[i32] }):$m1, (imm:{ *:[i32] }):$m2, (imm:{ *:[i32] }):$m3, (imm:{ *:[i32] }):$m4, (imm:{ *:[i32] }):$m5, (imm:{ *:[i32] }):$m6, (imm:{ *:[i32] }):$m7, (imm:{ *:[i32] }):$m8, (imm:{ *:[i32] }):$m9, (imm:{ *:[i32] }):$mA, (imm:{ *:[i32] }):$mB, (imm:{ *:[i32] }):$mC, (imm:{ *:[i32] }):$mD, (imm:{ *:[i32] }):$mE, (imm:{ *:[i32] }):$mF) |
| 30854 | /* 61527*/ /*Scope*/ 105|128,1/*233*/, /*->61762*/ |
| 30855 | /* 61529*/ OPC_CheckChild0Type, MVT::v2i64, |
| 30856 | /* 61531*/ OPC_RecordChild1, // #1 = $y |
| 30857 | /* 61532*/ OPC_CheckChild1Type, MVT::v2i64, |
| 30858 | /* 61534*/ OPC_RecordChild2, // #2 = $m0 |
| 30859 | /* 61535*/ OPC_MoveChild2, |
| 30860 | /* 61536*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30861 | /* 61539*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30862 | /* 61541*/ OPC_CheckType, MVT::i32, |
| 30863 | /* 61543*/ OPC_MoveParent, |
| 30864 | /* 61544*/ OPC_RecordChild3, // #3 = $m1 |
| 30865 | /* 61545*/ OPC_MoveChild3, |
| 30866 | /* 61546*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30867 | /* 61549*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30868 | /* 61551*/ OPC_CheckType, MVT::i32, |
| 30869 | /* 61553*/ OPC_MoveParent, |
| 30870 | /* 61554*/ OPC_RecordChild4, // #4 = $m2 |
| 30871 | /* 61555*/ OPC_MoveChild4, |
| 30872 | /* 61556*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30873 | /* 61559*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30874 | /* 61561*/ OPC_CheckType, MVT::i32, |
| 30875 | /* 61563*/ OPC_MoveParent, |
| 30876 | /* 61564*/ OPC_RecordChild5, // #5 = $m3 |
| 30877 | /* 61565*/ OPC_MoveChild5, |
| 30878 | /* 61566*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30879 | /* 61569*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30880 | /* 61571*/ OPC_CheckType, MVT::i32, |
| 30881 | /* 61573*/ OPC_MoveParent, |
| 30882 | /* 61574*/ OPC_RecordChild6, // #6 = $m4 |
| 30883 | /* 61575*/ OPC_MoveChild6, |
| 30884 | /* 61576*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30885 | /* 61579*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30886 | /* 61581*/ OPC_CheckType, MVT::i32, |
| 30887 | /* 61583*/ OPC_MoveParent, |
| 30888 | /* 61584*/ OPC_RecordChild7, // #7 = $m5 |
| 30889 | /* 61585*/ OPC_MoveChild7, |
| 30890 | /* 61586*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30891 | /* 61589*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30892 | /* 61591*/ OPC_CheckType, MVT::i32, |
| 30893 | /* 61593*/ OPC_MoveParent, |
| 30894 | /* 61594*/ OPC_MoveChild, 8, |
| 30895 | /* 61596*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30896 | /* 61599*/ OPC_RecordNode, // #8 = $m6 |
| 30897 | /* 61600*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30898 | /* 61602*/ OPC_CheckType, MVT::i32, |
| 30899 | /* 61604*/ OPC_MoveParent, |
| 30900 | /* 61605*/ OPC_MoveChild, 9, |
| 30901 | /* 61607*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30902 | /* 61610*/ OPC_RecordNode, // #9 = $m7 |
| 30903 | /* 61611*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30904 | /* 61613*/ OPC_CheckType, MVT::i32, |
| 30905 | /* 61615*/ OPC_MoveParent, |
| 30906 | /* 61616*/ OPC_MoveChild, 10, |
| 30907 | /* 61618*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30908 | /* 61621*/ OPC_RecordNode, // #10 = $m8 |
| 30909 | /* 61622*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30910 | /* 61624*/ OPC_CheckType, MVT::i32, |
| 30911 | /* 61626*/ OPC_MoveParent, |
| 30912 | /* 61627*/ OPC_MoveChild, 11, |
| 30913 | /* 61629*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30914 | /* 61632*/ OPC_RecordNode, // #11 = $m9 |
| 30915 | /* 61633*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30916 | /* 61635*/ OPC_CheckType, MVT::i32, |
| 30917 | /* 61637*/ OPC_MoveParent, |
| 30918 | /* 61638*/ OPC_MoveChild, 12, |
| 30919 | /* 61640*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30920 | /* 61643*/ OPC_RecordNode, // #12 = $mA |
| 30921 | /* 61644*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30922 | /* 61646*/ OPC_CheckType, MVT::i32, |
| 30923 | /* 61648*/ OPC_MoveParent, |
| 30924 | /* 61649*/ OPC_MoveChild, 13, |
| 30925 | /* 61651*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30926 | /* 61654*/ OPC_RecordNode, // #13 = $mB |
| 30927 | /* 61655*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30928 | /* 61657*/ OPC_CheckType, MVT::i32, |
| 30929 | /* 61659*/ OPC_MoveParent, |
| 30930 | /* 61660*/ OPC_MoveChild, 14, |
| 30931 | /* 61662*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30932 | /* 61665*/ OPC_RecordNode, // #14 = $mC |
| 30933 | /* 61666*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30934 | /* 61668*/ OPC_CheckType, MVT::i32, |
| 30935 | /* 61670*/ OPC_MoveParent, |
| 30936 | /* 61671*/ OPC_MoveChild, 15, |
| 30937 | /* 61673*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30938 | /* 61676*/ OPC_RecordNode, // #15 = $mD |
| 30939 | /* 61677*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30940 | /* 61679*/ OPC_CheckType, MVT::i32, |
| 30941 | /* 61681*/ OPC_MoveParent, |
| 30942 | /* 61682*/ OPC_MoveChild, 16, |
| 30943 | /* 61684*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30944 | /* 61687*/ OPC_RecordNode, // #16 = $mE |
| 30945 | /* 61688*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30946 | /* 61690*/ OPC_CheckType, MVT::i32, |
| 30947 | /* 61692*/ OPC_MoveParent, |
| 30948 | /* 61693*/ OPC_MoveChild, 17, |
| 30949 | /* 61695*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30950 | /* 61698*/ OPC_RecordNode, // #17 = $mF |
| 30951 | /* 61699*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30952 | /* 61701*/ OPC_CheckType, MVT::i32, |
| 30953 | /* 61703*/ OPC_MoveParent, |
| 30954 | /* 61704*/ OPC_CheckType, MVT::v2i64, |
| 30955 | /* 61706*/ OPC_EmitConvertToTarget, 2, |
| 30956 | /* 61708*/ OPC_EmitConvertToTarget, 3, |
| 30957 | /* 61710*/ OPC_EmitConvertToTarget, 4, |
| 30958 | /* 61712*/ OPC_EmitConvertToTarget, 5, |
| 30959 | /* 61714*/ OPC_EmitConvertToTarget, 6, |
| 30960 | /* 61716*/ OPC_EmitConvertToTarget, 7, |
| 30961 | /* 61718*/ OPC_EmitConvertToTarget, 8, |
| 30962 | /* 61720*/ OPC_EmitConvertToTarget, 9, |
| 30963 | /* 61722*/ OPC_EmitConvertToTarget, 10, |
| 30964 | /* 61724*/ OPC_EmitConvertToTarget, 11, |
| 30965 | /* 61726*/ OPC_EmitConvertToTarget, 12, |
| 30966 | /* 61728*/ OPC_EmitConvertToTarget, 13, |
| 30967 | /* 61730*/ OPC_EmitConvertToTarget, 14, |
| 30968 | /* 61732*/ OPC_EmitConvertToTarget, 15, |
| 30969 | /* 61734*/ OPC_EmitConvertToTarget, 16, |
| 30970 | /* 61736*/ OPC_EmitConvertToTarget, 17, |
| 30971 | /* 61738*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHUFFLE), 0, |
| 30972 | MVT::v2i64, 18/*#Ops*/, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, |
| 30973 | // Src: (wasm_shuffle:{ *:[v2i64] } V128:{ *:[v2i64] }:$x, V128:{ *:[v2i64] }:$y, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m0, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m1, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m2, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m3, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m4, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m5, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m6, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m7, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m8, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m9, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mA, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mB, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mC, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mD, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mE, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mF) - Complexity = 67 |
| 30974 | // Dst: (SHUFFLE:{ *:[v2i64] } ?:{ *:[v2i64] }:$x, ?:{ *:[v2i64] }:$y, (imm:{ *:[i32] }):$m0, (imm:{ *:[i32] }):$m1, (imm:{ *:[i32] }):$m2, (imm:{ *:[i32] }):$m3, (imm:{ *:[i32] }):$m4, (imm:{ *:[i32] }):$m5, (imm:{ *:[i32] }):$m6, (imm:{ *:[i32] }):$m7, (imm:{ *:[i32] }):$m8, (imm:{ *:[i32] }):$m9, (imm:{ *:[i32] }):$mA, (imm:{ *:[i32] }):$mB, (imm:{ *:[i32] }):$mC, (imm:{ *:[i32] }):$mD, (imm:{ *:[i32] }):$mE, (imm:{ *:[i32] }):$mF) |
| 30975 | /* 61762*/ /*Scope*/ 105|128,1/*233*/, /*->61997*/ |
| 30976 | /* 61764*/ OPC_CheckChild0Type, MVT::v4f32, |
| 30977 | /* 61766*/ OPC_RecordChild1, // #1 = $y |
| 30978 | /* 61767*/ OPC_CheckChild1Type, MVT::v4f32, |
| 30979 | /* 61769*/ OPC_RecordChild2, // #2 = $m0 |
| 30980 | /* 61770*/ OPC_MoveChild2, |
| 30981 | /* 61771*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30982 | /* 61774*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30983 | /* 61776*/ OPC_CheckType, MVT::i32, |
| 30984 | /* 61778*/ OPC_MoveParent, |
| 30985 | /* 61779*/ OPC_RecordChild3, // #3 = $m1 |
| 30986 | /* 61780*/ OPC_MoveChild3, |
| 30987 | /* 61781*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30988 | /* 61784*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30989 | /* 61786*/ OPC_CheckType, MVT::i32, |
| 30990 | /* 61788*/ OPC_MoveParent, |
| 30991 | /* 61789*/ OPC_RecordChild4, // #4 = $m2 |
| 30992 | /* 61790*/ OPC_MoveChild4, |
| 30993 | /* 61791*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 30994 | /* 61794*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 30995 | /* 61796*/ OPC_CheckType, MVT::i32, |
| 30996 | /* 61798*/ OPC_MoveParent, |
| 30997 | /* 61799*/ OPC_RecordChild5, // #5 = $m3 |
| 30998 | /* 61800*/ OPC_MoveChild5, |
| 30999 | /* 61801*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31000 | /* 61804*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31001 | /* 61806*/ OPC_CheckType, MVT::i32, |
| 31002 | /* 61808*/ OPC_MoveParent, |
| 31003 | /* 61809*/ OPC_RecordChild6, // #6 = $m4 |
| 31004 | /* 61810*/ OPC_MoveChild6, |
| 31005 | /* 61811*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31006 | /* 61814*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31007 | /* 61816*/ OPC_CheckType, MVT::i32, |
| 31008 | /* 61818*/ OPC_MoveParent, |
| 31009 | /* 61819*/ OPC_RecordChild7, // #7 = $m5 |
| 31010 | /* 61820*/ OPC_MoveChild7, |
| 31011 | /* 61821*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31012 | /* 61824*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31013 | /* 61826*/ OPC_CheckType, MVT::i32, |
| 31014 | /* 61828*/ OPC_MoveParent, |
| 31015 | /* 61829*/ OPC_MoveChild, 8, |
| 31016 | /* 61831*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31017 | /* 61834*/ OPC_RecordNode, // #8 = $m6 |
| 31018 | /* 61835*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31019 | /* 61837*/ OPC_CheckType, MVT::i32, |
| 31020 | /* 61839*/ OPC_MoveParent, |
| 31021 | /* 61840*/ OPC_MoveChild, 9, |
| 31022 | /* 61842*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31023 | /* 61845*/ OPC_RecordNode, // #9 = $m7 |
| 31024 | /* 61846*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31025 | /* 61848*/ OPC_CheckType, MVT::i32, |
| 31026 | /* 61850*/ OPC_MoveParent, |
| 31027 | /* 61851*/ OPC_MoveChild, 10, |
| 31028 | /* 61853*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31029 | /* 61856*/ OPC_RecordNode, // #10 = $m8 |
| 31030 | /* 61857*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31031 | /* 61859*/ OPC_CheckType, MVT::i32, |
| 31032 | /* 61861*/ OPC_MoveParent, |
| 31033 | /* 61862*/ OPC_MoveChild, 11, |
| 31034 | /* 61864*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31035 | /* 61867*/ OPC_RecordNode, // #11 = $m9 |
| 31036 | /* 61868*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31037 | /* 61870*/ OPC_CheckType, MVT::i32, |
| 31038 | /* 61872*/ OPC_MoveParent, |
| 31039 | /* 61873*/ OPC_MoveChild, 12, |
| 31040 | /* 61875*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31041 | /* 61878*/ OPC_RecordNode, // #12 = $mA |
| 31042 | /* 61879*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31043 | /* 61881*/ OPC_CheckType, MVT::i32, |
| 31044 | /* 61883*/ OPC_MoveParent, |
| 31045 | /* 61884*/ OPC_MoveChild, 13, |
| 31046 | /* 61886*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31047 | /* 61889*/ OPC_RecordNode, // #13 = $mB |
| 31048 | /* 61890*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31049 | /* 61892*/ OPC_CheckType, MVT::i32, |
| 31050 | /* 61894*/ OPC_MoveParent, |
| 31051 | /* 61895*/ OPC_MoveChild, 14, |
| 31052 | /* 61897*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31053 | /* 61900*/ OPC_RecordNode, // #14 = $mC |
| 31054 | /* 61901*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31055 | /* 61903*/ OPC_CheckType, MVT::i32, |
| 31056 | /* 61905*/ OPC_MoveParent, |
| 31057 | /* 61906*/ OPC_MoveChild, 15, |
| 31058 | /* 61908*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31059 | /* 61911*/ OPC_RecordNode, // #15 = $mD |
| 31060 | /* 61912*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31061 | /* 61914*/ OPC_CheckType, MVT::i32, |
| 31062 | /* 61916*/ OPC_MoveParent, |
| 31063 | /* 61917*/ OPC_MoveChild, 16, |
| 31064 | /* 61919*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31065 | /* 61922*/ OPC_RecordNode, // #16 = $mE |
| 31066 | /* 61923*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31067 | /* 61925*/ OPC_CheckType, MVT::i32, |
| 31068 | /* 61927*/ OPC_MoveParent, |
| 31069 | /* 61928*/ OPC_MoveChild, 17, |
| 31070 | /* 61930*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31071 | /* 61933*/ OPC_RecordNode, // #17 = $mF |
| 31072 | /* 61934*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31073 | /* 61936*/ OPC_CheckType, MVT::i32, |
| 31074 | /* 61938*/ OPC_MoveParent, |
| 31075 | /* 61939*/ OPC_CheckType, MVT::v4f32, |
| 31076 | /* 61941*/ OPC_EmitConvertToTarget, 2, |
| 31077 | /* 61943*/ OPC_EmitConvertToTarget, 3, |
| 31078 | /* 61945*/ OPC_EmitConvertToTarget, 4, |
| 31079 | /* 61947*/ OPC_EmitConvertToTarget, 5, |
| 31080 | /* 61949*/ OPC_EmitConvertToTarget, 6, |
| 31081 | /* 61951*/ OPC_EmitConvertToTarget, 7, |
| 31082 | /* 61953*/ OPC_EmitConvertToTarget, 8, |
| 31083 | /* 61955*/ OPC_EmitConvertToTarget, 9, |
| 31084 | /* 61957*/ OPC_EmitConvertToTarget, 10, |
| 31085 | /* 61959*/ OPC_EmitConvertToTarget, 11, |
| 31086 | /* 61961*/ OPC_EmitConvertToTarget, 12, |
| 31087 | /* 61963*/ OPC_EmitConvertToTarget, 13, |
| 31088 | /* 61965*/ OPC_EmitConvertToTarget, 14, |
| 31089 | /* 61967*/ OPC_EmitConvertToTarget, 15, |
| 31090 | /* 61969*/ OPC_EmitConvertToTarget, 16, |
| 31091 | /* 61971*/ OPC_EmitConvertToTarget, 17, |
| 31092 | /* 61973*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHUFFLE), 0, |
| 31093 | MVT::v4f32, 18/*#Ops*/, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, |
| 31094 | // Src: (wasm_shuffle:{ *:[v4f32] } V128:{ *:[v4f32] }:$x, V128:{ *:[v4f32] }:$y, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m0, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m1, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m2, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m3, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m4, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m5, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m6, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m7, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m8, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m9, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mA, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mB, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mC, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mD, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mE, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mF) - Complexity = 67 |
| 31095 | // Dst: (SHUFFLE:{ *:[v4f32] } ?:{ *:[v4f32] }:$x, ?:{ *:[v4f32] }:$y, (imm:{ *:[i32] }):$m0, (imm:{ *:[i32] }):$m1, (imm:{ *:[i32] }):$m2, (imm:{ *:[i32] }):$m3, (imm:{ *:[i32] }):$m4, (imm:{ *:[i32] }):$m5, (imm:{ *:[i32] }):$m6, (imm:{ *:[i32] }):$m7, (imm:{ *:[i32] }):$m8, (imm:{ *:[i32] }):$m9, (imm:{ *:[i32] }):$mA, (imm:{ *:[i32] }):$mB, (imm:{ *:[i32] }):$mC, (imm:{ *:[i32] }):$mD, (imm:{ *:[i32] }):$mE, (imm:{ *:[i32] }):$mF) |
| 31096 | /* 61997*/ /*Scope*/ 105|128,1/*233*/, /*->62232*/ |
| 31097 | /* 61999*/ OPC_CheckChild0Type, MVT::v2f64, |
| 31098 | /* 62001*/ OPC_RecordChild1, // #1 = $y |
| 31099 | /* 62002*/ OPC_CheckChild1Type, MVT::v2f64, |
| 31100 | /* 62004*/ OPC_RecordChild2, // #2 = $m0 |
| 31101 | /* 62005*/ OPC_MoveChild2, |
| 31102 | /* 62006*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31103 | /* 62009*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31104 | /* 62011*/ OPC_CheckType, MVT::i32, |
| 31105 | /* 62013*/ OPC_MoveParent, |
| 31106 | /* 62014*/ OPC_RecordChild3, // #3 = $m1 |
| 31107 | /* 62015*/ OPC_MoveChild3, |
| 31108 | /* 62016*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31109 | /* 62019*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31110 | /* 62021*/ OPC_CheckType, MVT::i32, |
| 31111 | /* 62023*/ OPC_MoveParent, |
| 31112 | /* 62024*/ OPC_RecordChild4, // #4 = $m2 |
| 31113 | /* 62025*/ OPC_MoveChild4, |
| 31114 | /* 62026*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31115 | /* 62029*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31116 | /* 62031*/ OPC_CheckType, MVT::i32, |
| 31117 | /* 62033*/ OPC_MoveParent, |
| 31118 | /* 62034*/ OPC_RecordChild5, // #5 = $m3 |
| 31119 | /* 62035*/ OPC_MoveChild5, |
| 31120 | /* 62036*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31121 | /* 62039*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31122 | /* 62041*/ OPC_CheckType, MVT::i32, |
| 31123 | /* 62043*/ OPC_MoveParent, |
| 31124 | /* 62044*/ OPC_RecordChild6, // #6 = $m4 |
| 31125 | /* 62045*/ OPC_MoveChild6, |
| 31126 | /* 62046*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31127 | /* 62049*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31128 | /* 62051*/ OPC_CheckType, MVT::i32, |
| 31129 | /* 62053*/ OPC_MoveParent, |
| 31130 | /* 62054*/ OPC_RecordChild7, // #7 = $m5 |
| 31131 | /* 62055*/ OPC_MoveChild7, |
| 31132 | /* 62056*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31133 | /* 62059*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31134 | /* 62061*/ OPC_CheckType, MVT::i32, |
| 31135 | /* 62063*/ OPC_MoveParent, |
| 31136 | /* 62064*/ OPC_MoveChild, 8, |
| 31137 | /* 62066*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31138 | /* 62069*/ OPC_RecordNode, // #8 = $m6 |
| 31139 | /* 62070*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31140 | /* 62072*/ OPC_CheckType, MVT::i32, |
| 31141 | /* 62074*/ OPC_MoveParent, |
| 31142 | /* 62075*/ OPC_MoveChild, 9, |
| 31143 | /* 62077*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31144 | /* 62080*/ OPC_RecordNode, // #9 = $m7 |
| 31145 | /* 62081*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31146 | /* 62083*/ OPC_CheckType, MVT::i32, |
| 31147 | /* 62085*/ OPC_MoveParent, |
| 31148 | /* 62086*/ OPC_MoveChild, 10, |
| 31149 | /* 62088*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31150 | /* 62091*/ OPC_RecordNode, // #10 = $m8 |
| 31151 | /* 62092*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31152 | /* 62094*/ OPC_CheckType, MVT::i32, |
| 31153 | /* 62096*/ OPC_MoveParent, |
| 31154 | /* 62097*/ OPC_MoveChild, 11, |
| 31155 | /* 62099*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31156 | /* 62102*/ OPC_RecordNode, // #11 = $m9 |
| 31157 | /* 62103*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31158 | /* 62105*/ OPC_CheckType, MVT::i32, |
| 31159 | /* 62107*/ OPC_MoveParent, |
| 31160 | /* 62108*/ OPC_MoveChild, 12, |
| 31161 | /* 62110*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31162 | /* 62113*/ OPC_RecordNode, // #12 = $mA |
| 31163 | /* 62114*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31164 | /* 62116*/ OPC_CheckType, MVT::i32, |
| 31165 | /* 62118*/ OPC_MoveParent, |
| 31166 | /* 62119*/ OPC_MoveChild, 13, |
| 31167 | /* 62121*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31168 | /* 62124*/ OPC_RecordNode, // #13 = $mB |
| 31169 | /* 62125*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31170 | /* 62127*/ OPC_CheckType, MVT::i32, |
| 31171 | /* 62129*/ OPC_MoveParent, |
| 31172 | /* 62130*/ OPC_MoveChild, 14, |
| 31173 | /* 62132*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31174 | /* 62135*/ OPC_RecordNode, // #14 = $mC |
| 31175 | /* 62136*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31176 | /* 62138*/ OPC_CheckType, MVT::i32, |
| 31177 | /* 62140*/ OPC_MoveParent, |
| 31178 | /* 62141*/ OPC_MoveChild, 15, |
| 31179 | /* 62143*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31180 | /* 62146*/ OPC_RecordNode, // #15 = $mD |
| 31181 | /* 62147*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31182 | /* 62149*/ OPC_CheckType, MVT::i32, |
| 31183 | /* 62151*/ OPC_MoveParent, |
| 31184 | /* 62152*/ OPC_MoveChild, 16, |
| 31185 | /* 62154*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31186 | /* 62157*/ OPC_RecordNode, // #16 = $mE |
| 31187 | /* 62158*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31188 | /* 62160*/ OPC_CheckType, MVT::i32, |
| 31189 | /* 62162*/ OPC_MoveParent, |
| 31190 | /* 62163*/ OPC_MoveChild, 17, |
| 31191 | /* 62165*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31192 | /* 62168*/ OPC_RecordNode, // #17 = $mF |
| 31193 | /* 62169*/ OPC_CheckPredicate, 26, // Predicate_LaneIdx32 |
| 31194 | /* 62171*/ OPC_CheckType, MVT::i32, |
| 31195 | /* 62173*/ OPC_MoveParent, |
| 31196 | /* 62174*/ OPC_CheckType, MVT::v2f64, |
| 31197 | /* 62176*/ OPC_EmitConvertToTarget, 2, |
| 31198 | /* 62178*/ OPC_EmitConvertToTarget, 3, |
| 31199 | /* 62180*/ OPC_EmitConvertToTarget, 4, |
| 31200 | /* 62182*/ OPC_EmitConvertToTarget, 5, |
| 31201 | /* 62184*/ OPC_EmitConvertToTarget, 6, |
| 31202 | /* 62186*/ OPC_EmitConvertToTarget, 7, |
| 31203 | /* 62188*/ OPC_EmitConvertToTarget, 8, |
| 31204 | /* 62190*/ OPC_EmitConvertToTarget, 9, |
| 31205 | /* 62192*/ OPC_EmitConvertToTarget, 10, |
| 31206 | /* 62194*/ OPC_EmitConvertToTarget, 11, |
| 31207 | /* 62196*/ OPC_EmitConvertToTarget, 12, |
| 31208 | /* 62198*/ OPC_EmitConvertToTarget, 13, |
| 31209 | /* 62200*/ OPC_EmitConvertToTarget, 14, |
| 31210 | /* 62202*/ OPC_EmitConvertToTarget, 15, |
| 31211 | /* 62204*/ OPC_EmitConvertToTarget, 16, |
| 31212 | /* 62206*/ OPC_EmitConvertToTarget, 17, |
| 31213 | /* 62208*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHUFFLE), 0, |
| 31214 | MVT::v2f64, 18/*#Ops*/, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, |
| 31215 | // Src: (wasm_shuffle:{ *:[v2f64] } V128:{ *:[v2f64] }:$x, V128:{ *:[v2f64] }:$y, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m0, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m1, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m2, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m3, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m4, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m5, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m6, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m7, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m8, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$m9, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mA, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mB, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mC, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mD, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mE, (imm:{ *:[i32] })<<P:Predicate_LaneIdx32>>:$mF) - Complexity = 67 |
| 31216 | // Dst: (SHUFFLE:{ *:[v2f64] } ?:{ *:[v2f64] }:$x, ?:{ *:[v2f64] }:$y, (imm:{ *:[i32] }):$m0, (imm:{ *:[i32] }):$m1, (imm:{ *:[i32] }):$m2, (imm:{ *:[i32] }):$m3, (imm:{ *:[i32] }):$m4, (imm:{ *:[i32] }):$m5, (imm:{ *:[i32] }):$m6, (imm:{ *:[i32] }):$m7, (imm:{ *:[i32] }):$m8, (imm:{ *:[i32] }):$m9, (imm:{ *:[i32] }):$mA, (imm:{ *:[i32] }):$mB, (imm:{ *:[i32] }):$mC, (imm:{ *:[i32] }):$mD, (imm:{ *:[i32] }):$mE, (imm:{ *:[i32] }):$mF) |
| 31217 | /* 62232*/ 0, /*End of Scope*/ |
| 31218 | /* 62233*/ /*SwitchOpcode*/ 40|128,12/*1576*/, TARGET_VAL(WebAssemblyISD::LOAD_SPLAT),// ->63813 |
| 31219 | /* 62237*/ OPC_RecordMemRef, |
| 31220 | /* 62238*/ OPC_RecordNode, // #0 = 'wasm_load_splat' chained node |
| 31221 | /* 62239*/ OPC_Scope, 82|128,4/*594*/, /*->62836*/ // 4 children in Scope |
| 31222 | /* 62242*/ OPC_MoveChild1, |
| 31223 | /* 62243*/ OPC_SwitchOpcode /*3 cases */, 45|128,1/*173*/, TARGET_VAL(ISD::ADD),// ->62421 |
| 31224 | /* 62248*/ OPC_RecordChild0, // #1 = $addr |
| 31225 | /* 62249*/ OPC_RecordChild1, // #2 = $off |
| 31226 | /* 62250*/ OPC_MoveChild1, |
| 31227 | /* 62251*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31228 | /* 62254*/ OPC_MoveParent, |
| 31229 | /* 62255*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 31230 | /* 62257*/ OPC_SwitchType /*2 cases */, 79, MVT::i32,// ->62339 |
| 31231 | /* 62260*/ OPC_MoveParent, |
| 31232 | /* 62261*/ OPC_SwitchType /*4 cases */, 17, MVT::v16i8,// ->62281 |
| 31233 | /* 62264*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31234 | /* 62266*/ OPC_EmitMergeInputChains1_0, |
| 31235 | /* 62267*/ OPC_EmitInteger, MVT::i32, 0, |
| 31236 | /* 62270*/ OPC_EmitConvertToTarget, 2, |
| 31237 | /* 62272*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31238 | MVT::v16i8, 3/*#Ops*/, 3, 4, 1, |
| 31239 | // Src: (wasm_load_splat:{ *:[v16i8] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 10 |
| 31240 | // Dst: (LOAD8_SPLAT_A32:{ *:[v16i8] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 31241 | /* 62281*/ /*SwitchType*/ 17, MVT::v8i16,// ->62300 |
| 31242 | /* 62283*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31243 | /* 62285*/ OPC_EmitMergeInputChains1_0, |
| 31244 | /* 62286*/ OPC_EmitInteger, MVT::i32, 0, |
| 31245 | /* 62289*/ OPC_EmitConvertToTarget, 2, |
| 31246 | /* 62291*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31247 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 31248 | // Src: (wasm_load_splat:{ *:[v8i16] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 10 |
| 31249 | // Dst: (LOAD16_SPLAT_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 31250 | /* 62300*/ /*SwitchType*/ 17, MVT::v4i32,// ->62319 |
| 31251 | /* 62302*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31252 | /* 62304*/ OPC_EmitMergeInputChains1_0, |
| 31253 | /* 62305*/ OPC_EmitInteger, MVT::i32, 0, |
| 31254 | /* 62308*/ OPC_EmitConvertToTarget, 2, |
| 31255 | /* 62310*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31256 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 31257 | // Src: (wasm_load_splat:{ *:[v4i32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 10 |
| 31258 | // Dst: (LOAD32_SPLAT_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 31259 | /* 62319*/ /*SwitchType*/ 17, MVT::v2i64,// ->62338 |
| 31260 | /* 62321*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31261 | /* 62323*/ OPC_EmitMergeInputChains1_0, |
| 31262 | /* 62324*/ OPC_EmitInteger, MVT::i32, 0, |
| 31263 | /* 62327*/ OPC_EmitConvertToTarget, 2, |
| 31264 | /* 62329*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31265 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 31266 | // Src: (wasm_load_splat:{ *:[v2i64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 10 |
| 31267 | // Dst: (LOAD64_SPLAT_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 31268 | /* 62338*/ 0, // EndSwitchType |
| 31269 | /* 62339*/ /*SwitchType*/ 79, MVT::i64,// ->62420 |
| 31270 | /* 62341*/ OPC_MoveParent, |
| 31271 | /* 62342*/ OPC_SwitchType /*4 cases */, 17, MVT::v16i8,// ->62362 |
| 31272 | /* 62345*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31273 | /* 62347*/ OPC_EmitMergeInputChains1_0, |
| 31274 | /* 62348*/ OPC_EmitInteger, MVT::i32, 0, |
| 31275 | /* 62351*/ OPC_EmitConvertToTarget, 2, |
| 31276 | /* 62353*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31277 | MVT::v16i8, 3/*#Ops*/, 3, 4, 1, |
| 31278 | // Src: (wasm_load_splat:{ *:[v16i8] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 10 |
| 31279 | // Dst: (LOAD8_SPLAT_A64:{ *:[v16i8] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 31280 | /* 62362*/ /*SwitchType*/ 17, MVT::v8i16,// ->62381 |
| 31281 | /* 62364*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31282 | /* 62366*/ OPC_EmitMergeInputChains1_0, |
| 31283 | /* 62367*/ OPC_EmitInteger, MVT::i32, 0, |
| 31284 | /* 62370*/ OPC_EmitConvertToTarget, 2, |
| 31285 | /* 62372*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31286 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 31287 | // Src: (wasm_load_splat:{ *:[v8i16] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 10 |
| 31288 | // Dst: (LOAD16_SPLAT_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 31289 | /* 62381*/ /*SwitchType*/ 17, MVT::v4i32,// ->62400 |
| 31290 | /* 62383*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31291 | /* 62385*/ OPC_EmitMergeInputChains1_0, |
| 31292 | /* 62386*/ OPC_EmitInteger, MVT::i32, 0, |
| 31293 | /* 62389*/ OPC_EmitConvertToTarget, 2, |
| 31294 | /* 62391*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31295 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 31296 | // Src: (wasm_load_splat:{ *:[v4i32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 10 |
| 31297 | // Dst: (LOAD32_SPLAT_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 31298 | /* 62400*/ /*SwitchType*/ 17, MVT::v2i64,// ->62419 |
| 31299 | /* 62402*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31300 | /* 62404*/ OPC_EmitMergeInputChains1_0, |
| 31301 | /* 62405*/ OPC_EmitInteger, MVT::i32, 0, |
| 31302 | /* 62408*/ OPC_EmitConvertToTarget, 2, |
| 31303 | /* 62410*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31304 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 31305 | // Src: (wasm_load_splat:{ *:[v2i64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 10 |
| 31306 | // Dst: (LOAD64_SPLAT_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 31307 | /* 62419*/ 0, // EndSwitchType |
| 31308 | /* 62420*/ 0, // EndSwitchType |
| 31309 | /* 62421*/ /*SwitchOpcode*/ 45|128,1/*173*/, TARGET_VAL(ISD::OR),// ->62598 |
| 31310 | /* 62425*/ OPC_RecordChild0, // #1 = $addr |
| 31311 | /* 62426*/ OPC_RecordChild1, // #2 = $off |
| 31312 | /* 62427*/ OPC_MoveChild1, |
| 31313 | /* 62428*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31314 | /* 62431*/ OPC_MoveParent, |
| 31315 | /* 62432*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 31316 | /* 62434*/ OPC_SwitchType /*2 cases */, 79, MVT::i32,// ->62516 |
| 31317 | /* 62437*/ OPC_MoveParent, |
| 31318 | /* 62438*/ OPC_SwitchType /*4 cases */, 17, MVT::v16i8,// ->62458 |
| 31319 | /* 62441*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31320 | /* 62443*/ OPC_EmitMergeInputChains1_0, |
| 31321 | /* 62444*/ OPC_EmitInteger, MVT::i32, 0, |
| 31322 | /* 62447*/ OPC_EmitConvertToTarget, 2, |
| 31323 | /* 62449*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31324 | MVT::v16i8, 3/*#Ops*/, 3, 4, 1, |
| 31325 | // Src: (wasm_load_splat:{ *:[v16i8] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 10 |
| 31326 | // Dst: (LOAD8_SPLAT_A32:{ *:[v16i8] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 31327 | /* 62458*/ /*SwitchType*/ 17, MVT::v8i16,// ->62477 |
| 31328 | /* 62460*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31329 | /* 62462*/ OPC_EmitMergeInputChains1_0, |
| 31330 | /* 62463*/ OPC_EmitInteger, MVT::i32, 0, |
| 31331 | /* 62466*/ OPC_EmitConvertToTarget, 2, |
| 31332 | /* 62468*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31333 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 31334 | // Src: (wasm_load_splat:{ *:[v8i16] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 10 |
| 31335 | // Dst: (LOAD16_SPLAT_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 31336 | /* 62477*/ /*SwitchType*/ 17, MVT::v4i32,// ->62496 |
| 31337 | /* 62479*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31338 | /* 62481*/ OPC_EmitMergeInputChains1_0, |
| 31339 | /* 62482*/ OPC_EmitInteger, MVT::i32, 0, |
| 31340 | /* 62485*/ OPC_EmitConvertToTarget, 2, |
| 31341 | /* 62487*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31342 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 31343 | // Src: (wasm_load_splat:{ *:[v4i32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 10 |
| 31344 | // Dst: (LOAD32_SPLAT_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 31345 | /* 62496*/ /*SwitchType*/ 17, MVT::v2i64,// ->62515 |
| 31346 | /* 62498*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31347 | /* 62500*/ OPC_EmitMergeInputChains1_0, |
| 31348 | /* 62501*/ OPC_EmitInteger, MVT::i32, 0, |
| 31349 | /* 62504*/ OPC_EmitConvertToTarget, 2, |
| 31350 | /* 62506*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31351 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 31352 | // Src: (wasm_load_splat:{ *:[v2i64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 10 |
| 31353 | // Dst: (LOAD64_SPLAT_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 31354 | /* 62515*/ 0, // EndSwitchType |
| 31355 | /* 62516*/ /*SwitchType*/ 79, MVT::i64,// ->62597 |
| 31356 | /* 62518*/ OPC_MoveParent, |
| 31357 | /* 62519*/ OPC_SwitchType /*4 cases */, 17, MVT::v16i8,// ->62539 |
| 31358 | /* 62522*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31359 | /* 62524*/ OPC_EmitMergeInputChains1_0, |
| 31360 | /* 62525*/ OPC_EmitInteger, MVT::i32, 0, |
| 31361 | /* 62528*/ OPC_EmitConvertToTarget, 2, |
| 31362 | /* 62530*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31363 | MVT::v16i8, 3/*#Ops*/, 3, 4, 1, |
| 31364 | // Src: (wasm_load_splat:{ *:[v16i8] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 10 |
| 31365 | // Dst: (LOAD8_SPLAT_A64:{ *:[v16i8] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 31366 | /* 62539*/ /*SwitchType*/ 17, MVT::v8i16,// ->62558 |
| 31367 | /* 62541*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31368 | /* 62543*/ OPC_EmitMergeInputChains1_0, |
| 31369 | /* 62544*/ OPC_EmitInteger, MVT::i32, 0, |
| 31370 | /* 62547*/ OPC_EmitConvertToTarget, 2, |
| 31371 | /* 62549*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31372 | MVT::v8i16, 3/*#Ops*/, 3, 4, 1, |
| 31373 | // Src: (wasm_load_splat:{ *:[v8i16] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 10 |
| 31374 | // Dst: (LOAD16_SPLAT_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 31375 | /* 62558*/ /*SwitchType*/ 17, MVT::v4i32,// ->62577 |
| 31376 | /* 62560*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31377 | /* 62562*/ OPC_EmitMergeInputChains1_0, |
| 31378 | /* 62563*/ OPC_EmitInteger, MVT::i32, 0, |
| 31379 | /* 62566*/ OPC_EmitConvertToTarget, 2, |
| 31380 | /* 62568*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31381 | MVT::v4i32, 3/*#Ops*/, 3, 4, 1, |
| 31382 | // Src: (wasm_load_splat:{ *:[v4i32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 10 |
| 31383 | // Dst: (LOAD32_SPLAT_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 31384 | /* 62577*/ /*SwitchType*/ 17, MVT::v2i64,// ->62596 |
| 31385 | /* 62579*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31386 | /* 62581*/ OPC_EmitMergeInputChains1_0, |
| 31387 | /* 62582*/ OPC_EmitInteger, MVT::i32, 0, |
| 31388 | /* 62585*/ OPC_EmitConvertToTarget, 2, |
| 31389 | /* 62587*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31390 | MVT::v2i64, 3/*#Ops*/, 3, 4, 1, |
| 31391 | // Src: (wasm_load_splat:{ *:[v2i64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 10 |
| 31392 | // Dst: (LOAD64_SPLAT_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 31393 | /* 62596*/ 0, // EndSwitchType |
| 31394 | /* 62597*/ 0, // EndSwitchType |
| 31395 | /* 62598*/ /*SwitchOpcode*/ 105|128,1/*233*/, TARGET_VAL(WebAssemblyISD::Wrapper),// ->62835 |
| 31396 | /* 62602*/ OPC_RecordChild0, // #1 = $off |
| 31397 | /* 62603*/ OPC_MoveChild0, |
| 31398 | /* 62604*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 31399 | /* 62607*/ OPC_MoveParent, |
| 31400 | /* 62608*/ OPC_MoveParent, |
| 31401 | /* 62609*/ OPC_SwitchType /*4 cases */, 54, MVT::v16i8,// ->62666 |
| 31402 | /* 62612*/ OPC_Scope, 25, /*->62639*/ // 2 children in Scope |
| 31403 | /* 62614*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 31404 | /* 62616*/ OPC_EmitMergeInputChains1_0, |
| 31405 | /* 62617*/ OPC_EmitInteger, MVT::i32, 0, |
| 31406 | /* 62620*/ OPC_EmitInteger, MVT::i32, 0, |
| 31407 | /* 62623*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 31408 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 31409 | /* 62630*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31410 | MVT::v16i8, 3/*#Ops*/, 2, 1, 4, |
| 31411 | // Src: (wasm_load_splat:{ *:[v16i8] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 31412 | // Dst: (LOAD8_SPLAT_A32:{ *:[v16i8] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 31413 | /* 62639*/ /*Scope*/ 25, /*->62665*/ |
| 31414 | /* 62640*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 31415 | /* 62642*/ OPC_EmitMergeInputChains1_0, |
| 31416 | /* 62643*/ OPC_EmitInteger, MVT::i32, 0, |
| 31417 | /* 62646*/ OPC_EmitInteger, MVT::i64, 0, |
| 31418 | /* 62649*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 31419 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 31420 | /* 62656*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31421 | MVT::v16i8, 3/*#Ops*/, 2, 1, 4, |
| 31422 | // Src: (wasm_load_splat:{ *:[v16i8] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 31423 | // Dst: (LOAD8_SPLAT_A64:{ *:[v16i8] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 31424 | /* 62665*/ 0, /*End of Scope*/ |
| 31425 | /* 62666*/ /*SwitchType*/ 54, MVT::v8i16,// ->62722 |
| 31426 | /* 62668*/ OPC_Scope, 25, /*->62695*/ // 2 children in Scope |
| 31427 | /* 62670*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 31428 | /* 62672*/ OPC_EmitMergeInputChains1_0, |
| 31429 | /* 62673*/ OPC_EmitInteger, MVT::i32, 0, |
| 31430 | /* 62676*/ OPC_EmitInteger, MVT::i32, 0, |
| 31431 | /* 62679*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 31432 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 31433 | /* 62686*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31434 | MVT::v8i16, 3/*#Ops*/, 2, 1, 4, |
| 31435 | // Src: (wasm_load_splat:{ *:[v8i16] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 31436 | // Dst: (LOAD16_SPLAT_A32:{ *:[v8i16] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 31437 | /* 62695*/ /*Scope*/ 25, /*->62721*/ |
| 31438 | /* 62696*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 31439 | /* 62698*/ OPC_EmitMergeInputChains1_0, |
| 31440 | /* 62699*/ OPC_EmitInteger, MVT::i32, 0, |
| 31441 | /* 62702*/ OPC_EmitInteger, MVT::i64, 0, |
| 31442 | /* 62705*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 31443 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 31444 | /* 62712*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31445 | MVT::v8i16, 3/*#Ops*/, 2, 1, 4, |
| 31446 | // Src: (wasm_load_splat:{ *:[v8i16] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 31447 | // Dst: (LOAD16_SPLAT_A64:{ *:[v8i16] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 31448 | /* 62721*/ 0, /*End of Scope*/ |
| 31449 | /* 62722*/ /*SwitchType*/ 54, MVT::v4i32,// ->62778 |
| 31450 | /* 62724*/ OPC_Scope, 25, /*->62751*/ // 2 children in Scope |
| 31451 | /* 62726*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 31452 | /* 62728*/ OPC_EmitMergeInputChains1_0, |
| 31453 | /* 62729*/ OPC_EmitInteger, MVT::i32, 0, |
| 31454 | /* 62732*/ OPC_EmitInteger, MVT::i32, 0, |
| 31455 | /* 62735*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 31456 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 31457 | /* 62742*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31458 | MVT::v4i32, 3/*#Ops*/, 2, 1, 4, |
| 31459 | // Src: (wasm_load_splat:{ *:[v4i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 31460 | // Dst: (LOAD32_SPLAT_A32:{ *:[v4i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 31461 | /* 62751*/ /*Scope*/ 25, /*->62777*/ |
| 31462 | /* 62752*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 31463 | /* 62754*/ OPC_EmitMergeInputChains1_0, |
| 31464 | /* 62755*/ OPC_EmitInteger, MVT::i32, 0, |
| 31465 | /* 62758*/ OPC_EmitInteger, MVT::i64, 0, |
| 31466 | /* 62761*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 31467 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 31468 | /* 62768*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31469 | MVT::v4i32, 3/*#Ops*/, 2, 1, 4, |
| 31470 | // Src: (wasm_load_splat:{ *:[v4i32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 31471 | // Dst: (LOAD32_SPLAT_A64:{ *:[v4i32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 31472 | /* 62777*/ 0, /*End of Scope*/ |
| 31473 | /* 62778*/ /*SwitchType*/ 54, MVT::v2i64,// ->62834 |
| 31474 | /* 62780*/ OPC_Scope, 25, /*->62807*/ // 2 children in Scope |
| 31475 | /* 62782*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 31476 | /* 62784*/ OPC_EmitMergeInputChains1_0, |
| 31477 | /* 62785*/ OPC_EmitInteger, MVT::i32, 0, |
| 31478 | /* 62788*/ OPC_EmitInteger, MVT::i32, 0, |
| 31479 | /* 62791*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 31480 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 31481 | /* 62798*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31482 | MVT::v2i64, 3/*#Ops*/, 2, 1, 4, |
| 31483 | // Src: (wasm_load_splat:{ *:[v2i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 31484 | // Dst: (LOAD64_SPLAT_A32:{ *:[v2i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 31485 | /* 62807*/ /*Scope*/ 25, /*->62833*/ |
| 31486 | /* 62808*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 31487 | /* 62810*/ OPC_EmitMergeInputChains1_0, |
| 31488 | /* 62811*/ OPC_EmitInteger, MVT::i32, 0, |
| 31489 | /* 62814*/ OPC_EmitInteger, MVT::i64, 0, |
| 31490 | /* 62817*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 31491 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 31492 | /* 62824*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31493 | MVT::v2i64, 3/*#Ops*/, 2, 1, 4, |
| 31494 | // Src: (wasm_load_splat:{ *:[v2i64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 31495 | // Dst: (LOAD64_SPLAT_A64:{ *:[v2i64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 31496 | /* 62833*/ 0, /*End of Scope*/ |
| 31497 | /* 62834*/ 0, // EndSwitchType |
| 31498 | /* 62835*/ 0, // EndSwitchOpcode |
| 31499 | /* 62836*/ /*Scope*/ 38|128,3/*422*/, /*->63260*/ |
| 31500 | /* 62838*/ OPC_RecordChild1, // #1 = $off |
| 31501 | /* 62839*/ OPC_Scope, 119|128,1/*247*/, /*->63089*/ // 3 children in Scope |
| 31502 | /* 62842*/ OPC_MoveChild1, |
| 31503 | /* 62843*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31504 | /* 62846*/ OPC_MoveParent, |
| 31505 | /* 62847*/ OPC_SwitchType /*4 cases */, 58, MVT::v16i8,// ->62908 |
| 31506 | /* 62850*/ OPC_Scope, 27, /*->62879*/ // 2 children in Scope |
| 31507 | /* 62852*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31508 | /* 62854*/ OPC_EmitMergeInputChains1_0, |
| 31509 | /* 62855*/ OPC_EmitInteger, MVT::i32, 0, |
| 31510 | /* 62858*/ OPC_EmitConvertToTarget, 1, |
| 31511 | /* 62860*/ OPC_EmitInteger, MVT::i32, 0, |
| 31512 | /* 62863*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 31513 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 31514 | /* 62870*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31515 | MVT::v16i8, 3/*#Ops*/, 2, 3, 5, |
| 31516 | // Src: (wasm_load_splat:{ *:[v16i8] } (imm:{ *:[iPTR] }):$off) - Complexity = 6 |
| 31517 | // Dst: (LOAD8_SPLAT_A32:{ *:[v16i8] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 31518 | /* 62879*/ /*Scope*/ 27, /*->62907*/ |
| 31519 | /* 62880*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31520 | /* 62882*/ OPC_EmitMergeInputChains1_0, |
| 31521 | /* 62883*/ OPC_EmitInteger, MVT::i32, 0, |
| 31522 | /* 62886*/ OPC_EmitConvertToTarget, 1, |
| 31523 | /* 62888*/ OPC_EmitInteger, MVT::i64, 0, |
| 31524 | /* 62891*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 31525 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 31526 | /* 62898*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31527 | MVT::v16i8, 3/*#Ops*/, 2, 3, 5, |
| 31528 | // Src: (wasm_load_splat:{ *:[v16i8] } (imm:{ *:[iPTR] }):$off) - Complexity = 6 |
| 31529 | // Dst: (LOAD8_SPLAT_A64:{ *:[v16i8] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 31530 | /* 62907*/ 0, /*End of Scope*/ |
| 31531 | /* 62908*/ /*SwitchType*/ 58, MVT::v8i16,// ->62968 |
| 31532 | /* 62910*/ OPC_Scope, 27, /*->62939*/ // 2 children in Scope |
| 31533 | /* 62912*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31534 | /* 62914*/ OPC_EmitMergeInputChains1_0, |
| 31535 | /* 62915*/ OPC_EmitInteger, MVT::i32, 0, |
| 31536 | /* 62918*/ OPC_EmitConvertToTarget, 1, |
| 31537 | /* 62920*/ OPC_EmitInteger, MVT::i32, 0, |
| 31538 | /* 62923*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 31539 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 31540 | /* 62930*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31541 | MVT::v8i16, 3/*#Ops*/, 2, 3, 5, |
| 31542 | // Src: (wasm_load_splat:{ *:[v8i16] } (imm:{ *:[iPTR] }):$off) - Complexity = 6 |
| 31543 | // Dst: (LOAD16_SPLAT_A32:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 31544 | /* 62939*/ /*Scope*/ 27, /*->62967*/ |
| 31545 | /* 62940*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31546 | /* 62942*/ OPC_EmitMergeInputChains1_0, |
| 31547 | /* 62943*/ OPC_EmitInteger, MVT::i32, 0, |
| 31548 | /* 62946*/ OPC_EmitConvertToTarget, 1, |
| 31549 | /* 62948*/ OPC_EmitInteger, MVT::i64, 0, |
| 31550 | /* 62951*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 31551 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 31552 | /* 62958*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31553 | MVT::v8i16, 3/*#Ops*/, 2, 3, 5, |
| 31554 | // Src: (wasm_load_splat:{ *:[v8i16] } (imm:{ *:[iPTR] }):$off) - Complexity = 6 |
| 31555 | // Dst: (LOAD16_SPLAT_A64:{ *:[v8i16] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 31556 | /* 62967*/ 0, /*End of Scope*/ |
| 31557 | /* 62968*/ /*SwitchType*/ 58, MVT::v4i32,// ->63028 |
| 31558 | /* 62970*/ OPC_Scope, 27, /*->62999*/ // 2 children in Scope |
| 31559 | /* 62972*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31560 | /* 62974*/ OPC_EmitMergeInputChains1_0, |
| 31561 | /* 62975*/ OPC_EmitInteger, MVT::i32, 0, |
| 31562 | /* 62978*/ OPC_EmitConvertToTarget, 1, |
| 31563 | /* 62980*/ OPC_EmitInteger, MVT::i32, 0, |
| 31564 | /* 62983*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 31565 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 31566 | /* 62990*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31567 | MVT::v4i32, 3/*#Ops*/, 2, 3, 5, |
| 31568 | // Src: (wasm_load_splat:{ *:[v4i32] } (imm:{ *:[iPTR] }):$off) - Complexity = 6 |
| 31569 | // Dst: (LOAD32_SPLAT_A32:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 31570 | /* 62999*/ /*Scope*/ 27, /*->63027*/ |
| 31571 | /* 63000*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31572 | /* 63002*/ OPC_EmitMergeInputChains1_0, |
| 31573 | /* 63003*/ OPC_EmitInteger, MVT::i32, 0, |
| 31574 | /* 63006*/ OPC_EmitConvertToTarget, 1, |
| 31575 | /* 63008*/ OPC_EmitInteger, MVT::i64, 0, |
| 31576 | /* 63011*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 31577 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 31578 | /* 63018*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31579 | MVT::v4i32, 3/*#Ops*/, 2, 3, 5, |
| 31580 | // Src: (wasm_load_splat:{ *:[v4i32] } (imm:{ *:[iPTR] }):$off) - Complexity = 6 |
| 31581 | // Dst: (LOAD32_SPLAT_A64:{ *:[v4i32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 31582 | /* 63027*/ 0, /*End of Scope*/ |
| 31583 | /* 63028*/ /*SwitchType*/ 58, MVT::v2i64,// ->63088 |
| 31584 | /* 63030*/ OPC_Scope, 27, /*->63059*/ // 2 children in Scope |
| 31585 | /* 63032*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31586 | /* 63034*/ OPC_EmitMergeInputChains1_0, |
| 31587 | /* 63035*/ OPC_EmitInteger, MVT::i32, 0, |
| 31588 | /* 63038*/ OPC_EmitConvertToTarget, 1, |
| 31589 | /* 63040*/ OPC_EmitInteger, MVT::i32, 0, |
| 31590 | /* 63043*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 31591 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 31592 | /* 63050*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31593 | MVT::v2i64, 3/*#Ops*/, 2, 3, 5, |
| 31594 | // Src: (wasm_load_splat:{ *:[v2i64] } (imm:{ *:[iPTR] }):$off) - Complexity = 6 |
| 31595 | // Dst: (LOAD64_SPLAT_A32:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 31596 | /* 63059*/ /*Scope*/ 27, /*->63087*/ |
| 31597 | /* 63060*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31598 | /* 63062*/ OPC_EmitMergeInputChains1_0, |
| 31599 | /* 63063*/ OPC_EmitInteger, MVT::i32, 0, |
| 31600 | /* 63066*/ OPC_EmitConvertToTarget, 1, |
| 31601 | /* 63068*/ OPC_EmitInteger, MVT::i64, 0, |
| 31602 | /* 63071*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 31603 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 31604 | /* 63078*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31605 | MVT::v2i64, 3/*#Ops*/, 2, 3, 5, |
| 31606 | // Src: (wasm_load_splat:{ *:[v2i64] } (imm:{ *:[iPTR] }):$off) - Complexity = 6 |
| 31607 | // Dst: (LOAD64_SPLAT_A64:{ *:[v2i64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 31608 | /* 63087*/ 0, /*End of Scope*/ |
| 31609 | /* 63088*/ 0, // EndSwitchType |
| 31610 | /* 63089*/ /*Scope*/ 84, /*->63174*/ |
| 31611 | /* 63090*/ OPC_CheckChild1Type, MVT::i32, |
| 31612 | /* 63092*/ OPC_SwitchType /*4 cases */, 18, MVT::v16i8,// ->63113 |
| 31613 | /* 63095*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31614 | /* 63097*/ OPC_EmitMergeInputChains1_0, |
| 31615 | /* 63098*/ OPC_EmitInteger, MVT::i32, 0, |
| 31616 | /* 63101*/ OPC_EmitInteger, MVT::i32, 0, |
| 31617 | /* 63104*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31618 | MVT::v16i8, 3/*#Ops*/, 2, 3, 1, |
| 31619 | // Src: (wasm_load_splat:{ *:[v16i8] } I32:{ *:[i32] }:$addr) - Complexity = 3 |
| 31620 | // Dst: (LOAD8_SPLAT_A32:{ *:[v16i8] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 31621 | /* 63113*/ /*SwitchType*/ 18, MVT::v8i16,// ->63133 |
| 31622 | /* 63115*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31623 | /* 63117*/ OPC_EmitMergeInputChains1_0, |
| 31624 | /* 63118*/ OPC_EmitInteger, MVT::i32, 0, |
| 31625 | /* 63121*/ OPC_EmitInteger, MVT::i32, 0, |
| 31626 | /* 63124*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31627 | MVT::v8i16, 3/*#Ops*/, 2, 3, 1, |
| 31628 | // Src: (wasm_load_splat:{ *:[v8i16] } I32:{ *:[i32] }:$addr) - Complexity = 3 |
| 31629 | // Dst: (LOAD16_SPLAT_A32:{ *:[v8i16] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 31630 | /* 63133*/ /*SwitchType*/ 18, MVT::v4i32,// ->63153 |
| 31631 | /* 63135*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31632 | /* 63137*/ OPC_EmitMergeInputChains1_0, |
| 31633 | /* 63138*/ OPC_EmitInteger, MVT::i32, 0, |
| 31634 | /* 63141*/ OPC_EmitInteger, MVT::i32, 0, |
| 31635 | /* 63144*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31636 | MVT::v4i32, 3/*#Ops*/, 2, 3, 1, |
| 31637 | // Src: (wasm_load_splat:{ *:[v4i32] } I32:{ *:[i32] }:$addr) - Complexity = 3 |
| 31638 | // Dst: (LOAD32_SPLAT_A32:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 31639 | /* 63153*/ /*SwitchType*/ 18, MVT::v2i64,// ->63173 |
| 31640 | /* 63155*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31641 | /* 63157*/ OPC_EmitMergeInputChains1_0, |
| 31642 | /* 63158*/ OPC_EmitInteger, MVT::i32, 0, |
| 31643 | /* 63161*/ OPC_EmitInteger, MVT::i32, 0, |
| 31644 | /* 63164*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31645 | MVT::v2i64, 3/*#Ops*/, 2, 3, 1, |
| 31646 | // Src: (wasm_load_splat:{ *:[v2i64] } I32:{ *:[i32] }:$addr) - Complexity = 3 |
| 31647 | // Dst: (LOAD64_SPLAT_A32:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 31648 | /* 63173*/ 0, // EndSwitchType |
| 31649 | /* 63174*/ /*Scope*/ 84, /*->63259*/ |
| 31650 | /* 63175*/ OPC_CheckChild1Type, MVT::i64, |
| 31651 | /* 63177*/ OPC_SwitchType /*4 cases */, 18, MVT::v16i8,// ->63198 |
| 31652 | /* 63180*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31653 | /* 63182*/ OPC_EmitMergeInputChains1_0, |
| 31654 | /* 63183*/ OPC_EmitInteger, MVT::i32, 0, |
| 31655 | /* 63186*/ OPC_EmitInteger, MVT::i64, 0, |
| 31656 | /* 63189*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31657 | MVT::v16i8, 3/*#Ops*/, 2, 3, 1, |
| 31658 | // Src: (wasm_load_splat:{ *:[v16i8] } I64:{ *:[i64] }:$addr) - Complexity = 3 |
| 31659 | // Dst: (LOAD8_SPLAT_A64:{ *:[v16i8] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 31660 | /* 63198*/ /*SwitchType*/ 18, MVT::v8i16,// ->63218 |
| 31661 | /* 63200*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31662 | /* 63202*/ OPC_EmitMergeInputChains1_0, |
| 31663 | /* 63203*/ OPC_EmitInteger, MVT::i32, 0, |
| 31664 | /* 63206*/ OPC_EmitInteger, MVT::i64, 0, |
| 31665 | /* 63209*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31666 | MVT::v8i16, 3/*#Ops*/, 2, 3, 1, |
| 31667 | // Src: (wasm_load_splat:{ *:[v8i16] } I64:{ *:[i64] }:$addr) - Complexity = 3 |
| 31668 | // Dst: (LOAD16_SPLAT_A64:{ *:[v8i16] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 31669 | /* 63218*/ /*SwitchType*/ 18, MVT::v4i32,// ->63238 |
| 31670 | /* 63220*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31671 | /* 63222*/ OPC_EmitMergeInputChains1_0, |
| 31672 | /* 63223*/ OPC_EmitInteger, MVT::i32, 0, |
| 31673 | /* 63226*/ OPC_EmitInteger, MVT::i64, 0, |
| 31674 | /* 63229*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31675 | MVT::v4i32, 3/*#Ops*/, 2, 3, 1, |
| 31676 | // Src: (wasm_load_splat:{ *:[v4i32] } I64:{ *:[i64] }:$addr) - Complexity = 3 |
| 31677 | // Dst: (LOAD32_SPLAT_A64:{ *:[v4i32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 31678 | /* 63238*/ /*SwitchType*/ 18, MVT::v2i64,// ->63258 |
| 31679 | /* 63240*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31680 | /* 63242*/ OPC_EmitMergeInputChains1_0, |
| 31681 | /* 63243*/ OPC_EmitInteger, MVT::i32, 0, |
| 31682 | /* 63246*/ OPC_EmitInteger, MVT::i64, 0, |
| 31683 | /* 63249*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31684 | MVT::v2i64, 3/*#Ops*/, 2, 3, 1, |
| 31685 | // Src: (wasm_load_splat:{ *:[v2i64] } I64:{ *:[i64] }:$addr) - Complexity = 3 |
| 31686 | // Dst: (LOAD64_SPLAT_A64:{ *:[v2i64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 31687 | /* 63258*/ 0, // EndSwitchType |
| 31688 | /* 63259*/ 0, /*End of Scope*/ |
| 31689 | /* 63260*/ /*Scope*/ 71|128,2/*327*/, /*->63589*/ |
| 31690 | /* 63262*/ OPC_MoveChild1, |
| 31691 | /* 63263*/ OPC_SwitchOpcode /*3 cases */, 97, TARGET_VAL(ISD::ADD),// ->63364 |
| 31692 | /* 63267*/ OPC_RecordChild0, // #1 = $addr |
| 31693 | /* 63268*/ OPC_RecordChild1, // #2 = $off |
| 31694 | /* 63269*/ OPC_MoveChild1, |
| 31695 | /* 63270*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31696 | /* 63273*/ OPC_MoveParent, |
| 31697 | /* 63274*/ OPC_CheckPredicate, 0, // Predicate_regPlusImm |
| 31698 | /* 63276*/ OPC_SwitchType /*2 cases */, 41, MVT::i32,// ->63320 |
| 31699 | /* 63279*/ OPC_MoveParent, |
| 31700 | /* 63280*/ OPC_SwitchType /*2 cases */, 17, MVT::v4f32,// ->63300 |
| 31701 | /* 63283*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31702 | /* 63285*/ OPC_EmitMergeInputChains1_0, |
| 31703 | /* 63286*/ OPC_EmitInteger, MVT::i32, 0, |
| 31704 | /* 63289*/ OPC_EmitConvertToTarget, 2, |
| 31705 | /* 63291*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31706 | MVT::v4f32, 3/*#Ops*/, 3, 4, 1, |
| 31707 | // Src: (wasm_load_splat:{ *:[v4f32] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 10 |
| 31708 | // Dst: (LOAD32_SPLAT_A32:{ *:[v4f32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 31709 | /* 63300*/ /*SwitchType*/ 17, MVT::v2f64,// ->63319 |
| 31710 | /* 63302*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31711 | /* 63304*/ OPC_EmitMergeInputChains1_0, |
| 31712 | /* 63305*/ OPC_EmitInteger, MVT::i32, 0, |
| 31713 | /* 63308*/ OPC_EmitConvertToTarget, 2, |
| 31714 | /* 63310*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31715 | MVT::v2f64, 3/*#Ops*/, 3, 4, 1, |
| 31716 | // Src: (wasm_load_splat:{ *:[v2f64] } (add:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 10 |
| 31717 | // Dst: (LOAD64_SPLAT_A32:{ *:[v2f64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 31718 | /* 63319*/ 0, // EndSwitchType |
| 31719 | /* 63320*/ /*SwitchType*/ 41, MVT::i64,// ->63363 |
| 31720 | /* 63322*/ OPC_MoveParent, |
| 31721 | /* 63323*/ OPC_SwitchType /*2 cases */, 17, MVT::v4f32,// ->63343 |
| 31722 | /* 63326*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31723 | /* 63328*/ OPC_EmitMergeInputChains1_0, |
| 31724 | /* 63329*/ OPC_EmitInteger, MVT::i32, 0, |
| 31725 | /* 63332*/ OPC_EmitConvertToTarget, 2, |
| 31726 | /* 63334*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31727 | MVT::v4f32, 3/*#Ops*/, 3, 4, 1, |
| 31728 | // Src: (wasm_load_splat:{ *:[v4f32] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 10 |
| 31729 | // Dst: (LOAD32_SPLAT_A64:{ *:[v4f32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 31730 | /* 63343*/ /*SwitchType*/ 17, MVT::v2f64,// ->63362 |
| 31731 | /* 63345*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31732 | /* 63347*/ OPC_EmitMergeInputChains1_0, |
| 31733 | /* 63348*/ OPC_EmitInteger, MVT::i32, 0, |
| 31734 | /* 63351*/ OPC_EmitConvertToTarget, 2, |
| 31735 | /* 63353*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31736 | MVT::v2f64, 3/*#Ops*/, 3, 4, 1, |
| 31737 | // Src: (wasm_load_splat:{ *:[v2f64] } (add:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_regPlusImm>>) - Complexity = 10 |
| 31738 | // Dst: (LOAD64_SPLAT_A64:{ *:[v2f64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 31739 | /* 63362*/ 0, // EndSwitchType |
| 31740 | /* 63363*/ 0, // EndSwitchType |
| 31741 | /* 63364*/ /*SwitchOpcode*/ 97, TARGET_VAL(ISD::OR),// ->63464 |
| 31742 | /* 63367*/ OPC_RecordChild0, // #1 = $addr |
| 31743 | /* 63368*/ OPC_RecordChild1, // #2 = $off |
| 31744 | /* 63369*/ OPC_MoveChild1, |
| 31745 | /* 63370*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31746 | /* 63373*/ OPC_MoveParent, |
| 31747 | /* 63374*/ OPC_CheckPredicate, 3, // Predicate_or_is_add |
| 31748 | /* 63376*/ OPC_SwitchType /*2 cases */, 41, MVT::i32,// ->63420 |
| 31749 | /* 63379*/ OPC_MoveParent, |
| 31750 | /* 63380*/ OPC_SwitchType /*2 cases */, 17, MVT::v4f32,// ->63400 |
| 31751 | /* 63383*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31752 | /* 63385*/ OPC_EmitMergeInputChains1_0, |
| 31753 | /* 63386*/ OPC_EmitInteger, MVT::i32, 0, |
| 31754 | /* 63389*/ OPC_EmitConvertToTarget, 2, |
| 31755 | /* 63391*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31756 | MVT::v4f32, 3/*#Ops*/, 3, 4, 1, |
| 31757 | // Src: (wasm_load_splat:{ *:[v4f32] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 10 |
| 31758 | // Dst: (LOAD32_SPLAT_A32:{ *:[v4f32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 31759 | /* 63400*/ /*SwitchType*/ 17, MVT::v2f64,// ->63419 |
| 31760 | /* 63402*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31761 | /* 63404*/ OPC_EmitMergeInputChains1_0, |
| 31762 | /* 63405*/ OPC_EmitInteger, MVT::i32, 0, |
| 31763 | /* 63408*/ OPC_EmitConvertToTarget, 2, |
| 31764 | /* 63410*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31765 | MVT::v2f64, 3/*#Ops*/, 3, 4, 1, |
| 31766 | // Src: (wasm_load_splat:{ *:[v2f64] } (or:{ *:[i32] } I32:{ *:[i32] }:$addr, (imm:{ *:[i32] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 10 |
| 31767 | // Dst: (LOAD64_SPLAT_A32:{ *:[v2f64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, I32:{ *:[i32] }:$addr) |
| 31768 | /* 63419*/ 0, // EndSwitchType |
| 31769 | /* 63420*/ /*SwitchType*/ 41, MVT::i64,// ->63463 |
| 31770 | /* 63422*/ OPC_MoveParent, |
| 31771 | /* 63423*/ OPC_SwitchType /*2 cases */, 17, MVT::v4f32,// ->63443 |
| 31772 | /* 63426*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31773 | /* 63428*/ OPC_EmitMergeInputChains1_0, |
| 31774 | /* 63429*/ OPC_EmitInteger, MVT::i32, 0, |
| 31775 | /* 63432*/ OPC_EmitConvertToTarget, 2, |
| 31776 | /* 63434*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31777 | MVT::v4f32, 3/*#Ops*/, 3, 4, 1, |
| 31778 | // Src: (wasm_load_splat:{ *:[v4f32] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 10 |
| 31779 | // Dst: (LOAD32_SPLAT_A64:{ *:[v4f32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 31780 | /* 63443*/ /*SwitchType*/ 17, MVT::v2f64,// ->63462 |
| 31781 | /* 63445*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31782 | /* 63447*/ OPC_EmitMergeInputChains1_0, |
| 31783 | /* 63448*/ OPC_EmitInteger, MVT::i32, 0, |
| 31784 | /* 63451*/ OPC_EmitConvertToTarget, 2, |
| 31785 | /* 63453*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31786 | MVT::v2f64, 3/*#Ops*/, 3, 4, 1, |
| 31787 | // Src: (wasm_load_splat:{ *:[v2f64] } (or:{ *:[i64] } I64:{ *:[i64] }:$addr, (imm:{ *:[i64] }):$off)<<P:Predicate_or_is_add>>) - Complexity = 10 |
| 31788 | // Dst: (LOAD64_SPLAT_A64:{ *:[v2f64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, I64:{ *:[i64] }:$addr) |
| 31789 | /* 63462*/ 0, // EndSwitchType |
| 31790 | /* 63463*/ 0, // EndSwitchType |
| 31791 | /* 63464*/ /*SwitchOpcode*/ 121, TARGET_VAL(WebAssemblyISD::Wrapper),// ->63588 |
| 31792 | /* 63467*/ OPC_RecordChild0, // #1 = $off |
| 31793 | /* 63468*/ OPC_MoveChild0, |
| 31794 | /* 63469*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress), |
| 31795 | /* 63472*/ OPC_MoveParent, |
| 31796 | /* 63473*/ OPC_MoveParent, |
| 31797 | /* 63474*/ OPC_SwitchType /*2 cases */, 54, MVT::v4f32,// ->63531 |
| 31798 | /* 63477*/ OPC_Scope, 25, /*->63504*/ // 2 children in Scope |
| 31799 | /* 63479*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 31800 | /* 63481*/ OPC_EmitMergeInputChains1_0, |
| 31801 | /* 63482*/ OPC_EmitInteger, MVT::i32, 0, |
| 31802 | /* 63485*/ OPC_EmitInteger, MVT::i32, 0, |
| 31803 | /* 63488*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 31804 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 31805 | /* 63495*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31806 | MVT::v4f32, 3/*#Ops*/, 2, 1, 4, |
| 31807 | // Src: (wasm_load_splat:{ *:[v4f32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 31808 | // Dst: (LOAD32_SPLAT_A32:{ *:[v4f32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 31809 | /* 63504*/ /*Scope*/ 25, /*->63530*/ |
| 31810 | /* 63505*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 31811 | /* 63507*/ OPC_EmitMergeInputChains1_0, |
| 31812 | /* 63508*/ OPC_EmitInteger, MVT::i32, 0, |
| 31813 | /* 63511*/ OPC_EmitInteger, MVT::i64, 0, |
| 31814 | /* 63514*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 31815 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 31816 | /* 63521*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31817 | MVT::v4f32, 3/*#Ops*/, 2, 1, 4, |
| 31818 | // Src: (wasm_load_splat:{ *:[v4f32] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 31819 | // Dst: (LOAD32_SPLAT_A64:{ *:[v4f32] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 31820 | /* 63530*/ 0, /*End of Scope*/ |
| 31821 | /* 63531*/ /*SwitchType*/ 54, MVT::v2f64,// ->63587 |
| 31822 | /* 63533*/ OPC_Scope, 25, /*->63560*/ // 2 children in Scope |
| 31823 | /* 63535*/ OPC_CheckPatternPredicate, 6, // (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 31824 | /* 63537*/ OPC_EmitMergeInputChains1_0, |
| 31825 | /* 63538*/ OPC_EmitInteger, MVT::i32, 0, |
| 31826 | /* 63541*/ OPC_EmitInteger, MVT::i32, 0, |
| 31827 | /* 63544*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 31828 | MVT::i32, 1/*#Ops*/, 3, // Results = #4 |
| 31829 | /* 63551*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31830 | MVT::v2f64, 3/*#Ops*/, 2, 1, 4, |
| 31831 | // Src: (wasm_load_splat:{ *:[v2f64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 31832 | // Dst: (LOAD64_SPLAT_A32:{ *:[v2f64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 31833 | /* 63560*/ /*Scope*/ 25, /*->63586*/ |
| 31834 | /* 63561*/ OPC_CheckPatternPredicate, 7, // (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()) |
| 31835 | /* 63563*/ OPC_EmitMergeInputChains1_0, |
| 31836 | /* 63564*/ OPC_EmitInteger, MVT::i32, 0, |
| 31837 | /* 63567*/ OPC_EmitInteger, MVT::i64, 0, |
| 31838 | /* 63570*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 31839 | MVT::i64, 1/*#Ops*/, 3, // Results = #4 |
| 31840 | /* 63577*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31841 | MVT::v2f64, 3/*#Ops*/, 2, 1, 4, |
| 31842 | // Src: (wasm_load_splat:{ *:[v2f64] } (WebAssemblywrapper:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$off)) - Complexity = 9 |
| 31843 | // Dst: (LOAD64_SPLAT_A64:{ *:[v2f64] } 0:{ *:[i32] }, (tglobaladdr:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 31844 | /* 63586*/ 0, /*End of Scope*/ |
| 31845 | /* 63587*/ 0, // EndSwitchType |
| 31846 | /* 63588*/ 0, // EndSwitchOpcode |
| 31847 | /* 63589*/ /*Scope*/ 93|128,1/*221*/, /*->63812*/ |
| 31848 | /* 63591*/ OPC_RecordChild1, // #1 = $off |
| 31849 | /* 63592*/ OPC_Scope, 127, /*->63721*/ // 3 children in Scope |
| 31850 | /* 63594*/ OPC_MoveChild1, |
| 31851 | /* 63595*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31852 | /* 63598*/ OPC_MoveParent, |
| 31853 | /* 63599*/ OPC_SwitchType /*2 cases */, 58, MVT::v4f32,// ->63660 |
| 31854 | /* 63602*/ OPC_Scope, 27, /*->63631*/ // 2 children in Scope |
| 31855 | /* 63604*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31856 | /* 63606*/ OPC_EmitMergeInputChains1_0, |
| 31857 | /* 63607*/ OPC_EmitInteger, MVT::i32, 0, |
| 31858 | /* 63610*/ OPC_EmitConvertToTarget, 1, |
| 31859 | /* 63612*/ OPC_EmitInteger, MVT::i32, 0, |
| 31860 | /* 63615*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 31861 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 31862 | /* 63622*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31863 | MVT::v4f32, 3/*#Ops*/, 2, 3, 5, |
| 31864 | // Src: (wasm_load_splat:{ *:[v4f32] } (imm:{ *:[iPTR] }):$off) - Complexity = 6 |
| 31865 | // Dst: (LOAD32_SPLAT_A32:{ *:[v4f32] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 31866 | /* 63631*/ /*Scope*/ 27, /*->63659*/ |
| 31867 | /* 63632*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31868 | /* 63634*/ OPC_EmitMergeInputChains1_0, |
| 31869 | /* 63635*/ OPC_EmitInteger, MVT::i32, 0, |
| 31870 | /* 63638*/ OPC_EmitConvertToTarget, 1, |
| 31871 | /* 63640*/ OPC_EmitInteger, MVT::i64, 0, |
| 31872 | /* 63643*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 31873 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 31874 | /* 63650*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31875 | MVT::v4f32, 3/*#Ops*/, 2, 3, 5, |
| 31876 | // Src: (wasm_load_splat:{ *:[v4f32] } (imm:{ *:[iPTR] }):$off) - Complexity = 6 |
| 31877 | // Dst: (LOAD32_SPLAT_A64:{ *:[v4f32] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 31878 | /* 63659*/ 0, /*End of Scope*/ |
| 31879 | /* 63660*/ /*SwitchType*/ 58, MVT::v2f64,// ->63720 |
| 31880 | /* 63662*/ OPC_Scope, 27, /*->63691*/ // 2 children in Scope |
| 31881 | /* 63664*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31882 | /* 63666*/ OPC_EmitMergeInputChains1_0, |
| 31883 | /* 63667*/ OPC_EmitInteger, MVT::i32, 0, |
| 31884 | /* 63670*/ OPC_EmitConvertToTarget, 1, |
| 31885 | /* 63672*/ OPC_EmitInteger, MVT::i32, 0, |
| 31886 | /* 63675*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I32), 0, |
| 31887 | MVT::i32, 1/*#Ops*/, 4, // Results = #5 |
| 31888 | /* 63682*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31889 | MVT::v2f64, 3/*#Ops*/, 2, 3, 5, |
| 31890 | // Src: (wasm_load_splat:{ *:[v2f64] } (imm:{ *:[iPTR] }):$off) - Complexity = 6 |
| 31891 | // Dst: (LOAD64_SPLAT_A32:{ *:[v2f64] } 0:{ *:[i32] }, (imm:{ *:[i32] }):$off, (CONST_I32:{ *:[i32] } 0:{ *:[i32] })) |
| 31892 | /* 63691*/ /*Scope*/ 27, /*->63719*/ |
| 31893 | /* 63692*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31894 | /* 63694*/ OPC_EmitMergeInputChains1_0, |
| 31895 | /* 63695*/ OPC_EmitInteger, MVT::i32, 0, |
| 31896 | /* 63698*/ OPC_EmitConvertToTarget, 1, |
| 31897 | /* 63700*/ OPC_EmitInteger, MVT::i64, 0, |
| 31898 | /* 63703*/ OPC_EmitNode1, TARGET_VAL(WebAssembly::CONST_I64), 0, |
| 31899 | MVT::i64, 1/*#Ops*/, 4, // Results = #5 |
| 31900 | /* 63710*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31901 | MVT::v2f64, 3/*#Ops*/, 2, 3, 5, |
| 31902 | // Src: (wasm_load_splat:{ *:[v2f64] } (imm:{ *:[iPTR] }):$off) - Complexity = 6 |
| 31903 | // Dst: (LOAD64_SPLAT_A64:{ *:[v2f64] } 0:{ *:[i32] }, (imm:{ *:[i64] }):$off, (CONST_I64:{ *:[i64] } 0:{ *:[i64] })) |
| 31904 | /* 63719*/ 0, /*End of Scope*/ |
| 31905 | /* 63720*/ 0, // EndSwitchType |
| 31906 | /* 63721*/ /*Scope*/ 44, /*->63766*/ |
| 31907 | /* 63722*/ OPC_CheckChild1Type, MVT::i32, |
| 31908 | /* 63724*/ OPC_SwitchType /*2 cases */, 18, MVT::v4f32,// ->63745 |
| 31909 | /* 63727*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31910 | /* 63729*/ OPC_EmitMergeInputChains1_0, |
| 31911 | /* 63730*/ OPC_EmitInteger, MVT::i32, 0, |
| 31912 | /* 63733*/ OPC_EmitInteger, MVT::i32, 0, |
| 31913 | /* 63736*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31914 | MVT::v4f32, 3/*#Ops*/, 2, 3, 1, |
| 31915 | // Src: (wasm_load_splat:{ *:[v4f32] } I32:{ *:[i32] }:$addr) - Complexity = 3 |
| 31916 | // Dst: (LOAD32_SPLAT_A32:{ *:[v4f32] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 31917 | /* 63745*/ /*SwitchType*/ 18, MVT::v2f64,// ->63765 |
| 31918 | /* 63747*/ OPC_CheckPatternPredicate, 4, // (!Subtarget->hasAddr64()) |
| 31919 | /* 63749*/ OPC_EmitMergeInputChains1_0, |
| 31920 | /* 63750*/ OPC_EmitInteger, MVT::i32, 0, |
| 31921 | /* 63753*/ OPC_EmitInteger, MVT::i32, 0, |
| 31922 | /* 63756*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs, |
| 31923 | MVT::v2f64, 3/*#Ops*/, 2, 3, 1, |
| 31924 | // Src: (wasm_load_splat:{ *:[v2f64] } I32:{ *:[i32] }:$addr) - Complexity = 3 |
| 31925 | // Dst: (LOAD64_SPLAT_A32:{ *:[v2f64] } 0:{ *:[i32] }, 0:{ *:[i32] }, I32:{ *:[i32] }:$addr) |
| 31926 | /* 63765*/ 0, // EndSwitchType |
| 31927 | /* 63766*/ /*Scope*/ 44, /*->63811*/ |
| 31928 | /* 63767*/ OPC_CheckChild1Type, MVT::i64, |
| 31929 | /* 63769*/ OPC_SwitchType /*2 cases */, 18, MVT::v4f32,// ->63790 |
| 31930 | /* 63772*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31931 | /* 63774*/ OPC_EmitMergeInputChains1_0, |
| 31932 | /* 63775*/ OPC_EmitInteger, MVT::i32, 0, |
| 31933 | /* 63778*/ OPC_EmitInteger, MVT::i64, 0, |
| 31934 | /* 63781*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31935 | MVT::v4f32, 3/*#Ops*/, 2, 3, 1, |
| 31936 | // Src: (wasm_load_splat:{ *:[v4f32] } I64:{ *:[i64] }:$addr) - Complexity = 3 |
| 31937 | // Dst: (LOAD32_SPLAT_A64:{ *:[v4f32] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 31938 | /* 63790*/ /*SwitchType*/ 18, MVT::v2f64,// ->63810 |
| 31939 | /* 63792*/ OPC_CheckPatternPredicate, 5, // (Subtarget->hasAddr64()) |
| 31940 | /* 63794*/ OPC_EmitMergeInputChains1_0, |
| 31941 | /* 63795*/ OPC_EmitInteger, MVT::i32, 0, |
| 31942 | /* 63798*/ OPC_EmitInteger, MVT::i64, 0, |
| 31943 | /* 63801*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs, |
| 31944 | MVT::v2f64, 3/*#Ops*/, 2, 3, 1, |
| 31945 | // Src: (wasm_load_splat:{ *:[v2f64] } I64:{ *:[i64] }:$addr) - Complexity = 3 |
| 31946 | // Dst: (LOAD64_SPLAT_A64:{ *:[v2f64] } 0:{ *:[i32] }, 0:{ *:[i64] }, I64:{ *:[i64] }:$addr) |
| 31947 | /* 63810*/ 0, // EndSwitchType |
| 31948 | /* 63811*/ 0, /*End of Scope*/ |
| 31949 | /* 63812*/ 0, /*End of Scope*/ |
| 31950 | /* 63813*/ /*SwitchOpcode*/ 23|128,2/*279*/, TARGET_VAL(ISD::INSERT_VECTOR_ELT),// ->64096 |
| 31951 | /* 63817*/ OPC_RecordChild0, // #0 = $vec |
| 31952 | /* 63818*/ OPC_RecordChild1, // #1 = $x |
| 31953 | /* 63819*/ OPC_Scope, 121, /*->63942*/ // 4 children in Scope |
| 31954 | /* 63821*/ OPC_CheckChild1Type, MVT::i32, |
| 31955 | /* 63823*/ OPC_Scope, 66, /*->63891*/ // 2 children in Scope |
| 31956 | /* 63825*/ OPC_RecordChild2, // #2 = $idx |
| 31957 | /* 63826*/ OPC_MoveChild2, |
| 31958 | /* 63827*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 31959 | /* 63830*/ OPC_CheckType, MVT::i32, |
| 31960 | /* 63832*/ OPC_Scope, 18, /*->63852*/ // 3 children in Scope |
| 31961 | /* 63834*/ OPC_CheckPredicate, 4, // Predicate_LaneIdx16 |
| 31962 | /* 63836*/ OPC_MoveParent, |
| 31963 | /* 63837*/ OPC_CheckType, MVT::v16i8, |
| 31964 | /* 63839*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 31965 | /* 63841*/ OPC_EmitConvertToTarget, 2, |
| 31966 | /* 63843*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REPLACE_LANE_I8x16), 0, |
| 31967 | MVT::v16i8, 3/*#Ops*/, 0, 3, 1, |
| 31968 | // Src: (vector_insert:{ *:[v16i8] } V128:{ *:[v16i8] }:$vec, I32:{ *:[i32] }:$x, (imm:{ *:[i32] })<<P:Predicate_LaneIdx16>>:$idx) - Complexity = 7 |
| 31969 | // Dst: (REPLACE_LANE_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$vec, (imm:{ *:[i32] }):$idx, I32:{ *:[i32] }:$x) |
| 31970 | /* 63852*/ /*Scope*/ 18, /*->63871*/ |
| 31971 | /* 63853*/ OPC_CheckPredicate, 5, // Predicate_LaneIdx8 |
| 31972 | /* 63855*/ OPC_MoveParent, |
| 31973 | /* 63856*/ OPC_CheckType, MVT::v8i16, |
| 31974 | /* 63858*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 31975 | /* 63860*/ OPC_EmitConvertToTarget, 2, |
| 31976 | /* 63862*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REPLACE_LANE_I16x8), 0, |
| 31977 | MVT::v8i16, 3/*#Ops*/, 0, 3, 1, |
| 31978 | // Src: (vector_insert:{ *:[v8i16] } V128:{ *:[v8i16] }:$vec, I32:{ *:[i32] }:$x, (imm:{ *:[i32] })<<P:Predicate_LaneIdx8>>:$idx) - Complexity = 7 |
| 31979 | // Dst: (REPLACE_LANE_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$vec, (imm:{ *:[i32] }):$idx, I32:{ *:[i32] }:$x) |
| 31980 | /* 63871*/ /*Scope*/ 18, /*->63890*/ |
| 31981 | /* 63872*/ OPC_CheckPredicate, 7, // Predicate_LaneIdx4 |
| 31982 | /* 63874*/ OPC_MoveParent, |
| 31983 | /* 63875*/ OPC_CheckType, MVT::v4i32, |
| 31984 | /* 63877*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 31985 | /* 63879*/ OPC_EmitConvertToTarget, 2, |
| 31986 | /* 63881*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REPLACE_LANE_I32x4), 0, |
| 31987 | MVT::v4i32, 3/*#Ops*/, 0, 3, 1, |
| 31988 | // Src: (vector_insert:{ *:[v4i32] } V128:{ *:[v4i32] }:$vec, I32:{ *:[i32] }:$x, (imm:{ *:[i32] })<<P:Predicate_LaneIdx4>>:$idx) - Complexity = 7 |
| 31989 | // Dst: (REPLACE_LANE_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$vec, (imm:{ *:[i32] }):$idx, I32:{ *:[i32] }:$x) |
| 31990 | /* 63890*/ 0, /*End of Scope*/ |
| 31991 | /* 63891*/ /*Scope*/ 49, /*->63941*/ |
| 31992 | /* 63892*/ OPC_MoveChild2, |
| 31993 | /* 63893*/ OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF), |
| 31994 | /* 63896*/ OPC_MoveParent, |
| 31995 | /* 63897*/ OPC_SwitchType /*3 cases */, 12, MVT::v16i8,// ->63912 |
| 31996 | /* 63900*/ OPC_EmitInteger, MVT::i32, 0, |
| 31997 | /* 63903*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REPLACE_LANE_I8x16), 0, |
| 31998 | MVT::v16i8, 3/*#Ops*/, 0, 2, 1, |
| 31999 | // Src: (vector_insert:{ *:[v16i8] } V128:{ *:[v16i8] }:$vec, I32:{ *:[i32] }:$x, (undef:{ *:[iPTR] })) - Complexity = 6 |
| 32000 | // Dst: (REPLACE_LANE_I8x16:{ *:[v16i8] } ?:{ *:[v16i8] }:$vec, 0:{ *:[i32] }, ?:{ *:[i32] }:$x) |
| 32001 | /* 63912*/ /*SwitchType*/ 12, MVT::v8i16,// ->63926 |
| 32002 | /* 63914*/ OPC_EmitInteger, MVT::i32, 0, |
| 32003 | /* 63917*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REPLACE_LANE_I16x8), 0, |
| 32004 | MVT::v8i16, 3/*#Ops*/, 0, 2, 1, |
| 32005 | // Src: (vector_insert:{ *:[v8i16] } V128:{ *:[v8i16] }:$vec, I32:{ *:[i32] }:$x, (undef:{ *:[iPTR] })) - Complexity = 6 |
| 32006 | // Dst: (REPLACE_LANE_I16x8:{ *:[v8i16] } ?:{ *:[v8i16] }:$vec, 0:{ *:[i32] }, ?:{ *:[i32] }:$x) |
| 32007 | /* 63926*/ /*SwitchType*/ 12, MVT::v4i32,// ->63940 |
| 32008 | /* 63928*/ OPC_EmitInteger, MVT::i32, 0, |
| 32009 | /* 63931*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REPLACE_LANE_I32x4), 0, |
| 32010 | MVT::v4i32, 3/*#Ops*/, 0, 2, 1, |
| 32011 | // Src: (vector_insert:{ *:[v4i32] } V128:{ *:[v4i32] }:$vec, I32:{ *:[i32] }:$x, (undef:{ *:[iPTR] })) - Complexity = 6 |
| 32012 | // Dst: (REPLACE_LANE_I32x4:{ *:[v4i32] } ?:{ *:[v4i32] }:$vec, 0:{ *:[i32] }, ?:{ *:[i32] }:$x) |
| 32013 | /* 63940*/ 0, // EndSwitchType |
| 32014 | /* 63941*/ 0, /*End of Scope*/ |
| 32015 | /* 63942*/ /*Scope*/ 50, /*->63993*/ |
| 32016 | /* 63943*/ OPC_CheckChild1Type, MVT::i64, |
| 32017 | /* 63945*/ OPC_Scope, 25, /*->63972*/ // 2 children in Scope |
| 32018 | /* 63947*/ OPC_RecordChild2, // #2 = $idx |
| 32019 | /* 63948*/ OPC_MoveChild2, |
| 32020 | /* 63949*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 32021 | /* 63952*/ OPC_CheckPredicate, 8, // Predicate_LaneIdx2 |
| 32022 | /* 63954*/ OPC_CheckType, MVT::i32, |
| 32023 | /* 63956*/ OPC_MoveParent, |
| 32024 | /* 63957*/ OPC_CheckType, MVT::v2i64, |
| 32025 | /* 63959*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32026 | /* 63961*/ OPC_EmitConvertToTarget, 2, |
| 32027 | /* 63963*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REPLACE_LANE_I64x2), 0, |
| 32028 | MVT::v2i64, 3/*#Ops*/, 0, 3, 1, |
| 32029 | // Src: (vector_insert:{ *:[v2i64] } V128:{ *:[v2i64] }:$vec, I64:{ *:[i64] }:$x, (imm:{ *:[i32] })<<P:Predicate_LaneIdx2>>:$idx) - Complexity = 7 |
| 32030 | // Dst: (REPLACE_LANE_I64x2:{ *:[v2i64] } V128:{ *:[v2i64] }:$vec, (imm:{ *:[i32] }):$idx, I64:{ *:[i64] }:$x) |
| 32031 | /* 63972*/ /*Scope*/ 19, /*->63992*/ |
| 32032 | /* 63973*/ OPC_MoveChild2, |
| 32033 | /* 63974*/ OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF), |
| 32034 | /* 63977*/ OPC_MoveParent, |
| 32035 | /* 63978*/ OPC_CheckType, MVT::v2i64, |
| 32036 | /* 63980*/ OPC_EmitInteger, MVT::i32, 0, |
| 32037 | /* 63983*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REPLACE_LANE_I64x2), 0, |
| 32038 | MVT::v2i64, 3/*#Ops*/, 0, 2, 1, |
| 32039 | // Src: (vector_insert:{ *:[v2i64] } V128:{ *:[v2i64] }:$vec, I64:{ *:[i64] }:$x, (undef:{ *:[iPTR] })) - Complexity = 6 |
| 32040 | // Dst: (REPLACE_LANE_I64x2:{ *:[v2i64] } ?:{ *:[v2i64] }:$vec, 0:{ *:[i32] }, ?:{ *:[i64] }:$x) |
| 32041 | /* 63992*/ 0, /*End of Scope*/ |
| 32042 | /* 63993*/ /*Scope*/ 50, /*->64044*/ |
| 32043 | /* 63994*/ OPC_CheckChild1Type, MVT::f32, |
| 32044 | /* 63996*/ OPC_Scope, 25, /*->64023*/ // 2 children in Scope |
| 32045 | /* 63998*/ OPC_RecordChild2, // #2 = $idx |
| 32046 | /* 63999*/ OPC_MoveChild2, |
| 32047 | /* 64000*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 32048 | /* 64003*/ OPC_CheckPredicate, 7, // Predicate_LaneIdx4 |
| 32049 | /* 64005*/ OPC_CheckType, MVT::i32, |
| 32050 | /* 64007*/ OPC_MoveParent, |
| 32051 | /* 64008*/ OPC_CheckType, MVT::v4f32, |
| 32052 | /* 64010*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32053 | /* 64012*/ OPC_EmitConvertToTarget, 2, |
| 32054 | /* 64014*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REPLACE_LANE_F32x4), 0, |
| 32055 | MVT::v4f32, 3/*#Ops*/, 0, 3, 1, |
| 32056 | // Src: (vector_insert:{ *:[v4f32] } V128:{ *:[v4f32] }:$vec, F32:{ *:[f32] }:$x, (imm:{ *:[i32] })<<P:Predicate_LaneIdx4>>:$idx) - Complexity = 7 |
| 32057 | // Dst: (REPLACE_LANE_F32x4:{ *:[v4f32] } V128:{ *:[v4f32] }:$vec, (imm:{ *:[i32] }):$idx, F32:{ *:[f32] }:$x) |
| 32058 | /* 64023*/ /*Scope*/ 19, /*->64043*/ |
| 32059 | /* 64024*/ OPC_MoveChild2, |
| 32060 | /* 64025*/ OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF), |
| 32061 | /* 64028*/ OPC_MoveParent, |
| 32062 | /* 64029*/ OPC_CheckType, MVT::v4f32, |
| 32063 | /* 64031*/ OPC_EmitInteger, MVT::i32, 0, |
| 32064 | /* 64034*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REPLACE_LANE_F32x4), 0, |
| 32065 | MVT::v4f32, 3/*#Ops*/, 0, 2, 1, |
| 32066 | // Src: (vector_insert:{ *:[v4f32] } V128:{ *:[v4f32] }:$vec, F32:{ *:[f32] }:$x, (undef:{ *:[iPTR] })) - Complexity = 6 |
| 32067 | // Dst: (REPLACE_LANE_F32x4:{ *:[v4f32] } ?:{ *:[v4f32] }:$vec, 0:{ *:[i32] }, ?:{ *:[f32] }:$x) |
| 32068 | /* 64043*/ 0, /*End of Scope*/ |
| 32069 | /* 64044*/ /*Scope*/ 50, /*->64095*/ |
| 32070 | /* 64045*/ OPC_CheckChild1Type, MVT::f64, |
| 32071 | /* 64047*/ OPC_Scope, 25, /*->64074*/ // 2 children in Scope |
| 32072 | /* 64049*/ OPC_RecordChild2, // #2 = $idx |
| 32073 | /* 64050*/ OPC_MoveChild2, |
| 32074 | /* 64051*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| 32075 | /* 64054*/ OPC_CheckPredicate, 8, // Predicate_LaneIdx2 |
| 32076 | /* 64056*/ OPC_CheckType, MVT::i32, |
| 32077 | /* 64058*/ OPC_MoveParent, |
| 32078 | /* 64059*/ OPC_CheckType, MVT::v2f64, |
| 32079 | /* 64061*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32080 | /* 64063*/ OPC_EmitConvertToTarget, 2, |
| 32081 | /* 64065*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REPLACE_LANE_F64x2), 0, |
| 32082 | MVT::v2f64, 3/*#Ops*/, 0, 3, 1, |
| 32083 | // Src: (vector_insert:{ *:[v2f64] } V128:{ *:[v2f64] }:$vec, F64:{ *:[f64] }:$x, (imm:{ *:[i32] })<<P:Predicate_LaneIdx2>>:$idx) - Complexity = 7 |
| 32084 | // Dst: (REPLACE_LANE_F64x2:{ *:[v2f64] } V128:{ *:[v2f64] }:$vec, (imm:{ *:[i32] }):$idx, F64:{ *:[f64] }:$x) |
| 32085 | /* 64074*/ /*Scope*/ 19, /*->64094*/ |
| 32086 | /* 64075*/ OPC_MoveChild2, |
| 32087 | /* 64076*/ OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF), |
| 32088 | /* 64079*/ OPC_MoveParent, |
| 32089 | /* 64080*/ OPC_CheckType, MVT::v2f64, |
| 32090 | /* 64082*/ OPC_EmitInteger, MVT::i32, 0, |
| 32091 | /* 64085*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::REPLACE_LANE_F64x2), 0, |
| 32092 | MVT::v2f64, 3/*#Ops*/, 0, 2, 1, |
| 32093 | // Src: (vector_insert:{ *:[v2f64] } V128:{ *:[v2f64] }:$vec, F64:{ *:[f64] }:$x, (undef:{ *:[iPTR] })) - Complexity = 6 |
| 32094 | // Dst: (REPLACE_LANE_F64x2:{ *:[v2f64] } ?:{ *:[v2f64] }:$vec, 0:{ *:[i32] }, ?:{ *:[f64] }:$x) |
| 32095 | /* 64094*/ 0, /*End of Scope*/ |
| 32096 | /* 64095*/ 0, /*End of Scope*/ |
| 32097 | /* 64096*/ /*SwitchOpcode*/ 18, TARGET_VAL(WebAssemblyISD::SWIZZLE),// ->64117 |
| 32098 | /* 64099*/ OPC_RecordChild0, // #0 = $src |
| 32099 | /* 64100*/ OPC_CheckChild0Type, MVT::v16i8, |
| 32100 | /* 64102*/ OPC_RecordChild1, // #1 = $mask |
| 32101 | /* 64103*/ OPC_CheckChild1Type, MVT::v16i8, |
| 32102 | /* 64105*/ OPC_CheckType, MVT::v16i8, |
| 32103 | /* 64107*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32104 | /* 64109*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SWIZZLE), 0, |
| 32105 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 32106 | // Src: (wasm_swizzle:{ *:[v16i8] } V128:{ *:[v16i8] }:$src, V128:{ *:[v16i8] }:$mask) - Complexity = 3 |
| 32107 | // Dst: (SWIZZLE:{ *:[v16i8] } V128:{ *:[v16i8] }:$src, V128:{ *:[v16i8] }:$mask) |
| 32108 | /* 64117*/ /*SwitchOpcode*/ 71, TARGET_VAL(ISD::SCALAR_TO_VECTOR),// ->64191 |
| 32109 | /* 64120*/ OPC_RecordChild0, // #0 = $x |
| 32110 | /* 64121*/ OPC_Scope, 31, /*->64154*/ // 4 children in Scope |
| 32111 | /* 64123*/ OPC_CheckChild0Type, MVT::i32, |
| 32112 | /* 64125*/ OPC_SwitchType /*3 cases */, 7, MVT::v16i8,// ->64135 |
| 32113 | /* 64128*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SPLAT_I8x16), 0, |
| 32114 | MVT::v16i8, 1/*#Ops*/, 0, |
| 32115 | // Src: (scalar_to_vector:{ *:[v16i8] } I32:{ *:[i32] }:$x) - Complexity = 3 |
| 32116 | // Dst: (SPLAT_I8x16:{ *:[v16i8] } ?:{ *:[i32] }:$x) |
| 32117 | /* 64135*/ /*SwitchType*/ 7, MVT::v8i16,// ->64144 |
| 32118 | /* 64137*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SPLAT_I16x8), 0, |
| 32119 | MVT::v8i16, 1/*#Ops*/, 0, |
| 32120 | // Src: (scalar_to_vector:{ *:[v8i16] } I32:{ *:[i32] }:$x) - Complexity = 3 |
| 32121 | // Dst: (SPLAT_I16x8:{ *:[v8i16] } ?:{ *:[i32] }:$x) |
| 32122 | /* 64144*/ /*SwitchType*/ 7, MVT::v4i32,// ->64153 |
| 32123 | /* 64146*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SPLAT_I32x4), 0, |
| 32124 | MVT::v4i32, 1/*#Ops*/, 0, |
| 32125 | // Src: (scalar_to_vector:{ *:[v4i32] } I32:{ *:[i32] }:$x) - Complexity = 3 |
| 32126 | // Dst: (SPLAT_I32x4:{ *:[v4i32] } ?:{ *:[i32] }:$x) |
| 32127 | /* 64153*/ 0, // EndSwitchType |
| 32128 | /* 64154*/ /*Scope*/ 11, /*->64166*/ |
| 32129 | /* 64155*/ OPC_CheckChild0Type, MVT::i64, |
| 32130 | /* 64157*/ OPC_CheckType, MVT::v2i64, |
| 32131 | /* 64159*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SPLAT_I64x2), 0, |
| 32132 | MVT::v2i64, 1/*#Ops*/, 0, |
| 32133 | // Src: (scalar_to_vector:{ *:[v2i64] } I64:{ *:[i64] }:$x) - Complexity = 3 |
| 32134 | // Dst: (SPLAT_I64x2:{ *:[v2i64] } ?:{ *:[i64] }:$x) |
| 32135 | /* 64166*/ /*Scope*/ 11, /*->64178*/ |
| 32136 | /* 64167*/ OPC_CheckChild0Type, MVT::f32, |
| 32137 | /* 64169*/ OPC_CheckType, MVT::v4f32, |
| 32138 | /* 64171*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SPLAT_F32x4), 0, |
| 32139 | MVT::v4f32, 1/*#Ops*/, 0, |
| 32140 | // Src: (scalar_to_vector:{ *:[v4f32] } F32:{ *:[f32] }:$x) - Complexity = 3 |
| 32141 | // Dst: (SPLAT_F32x4:{ *:[v4f32] } ?:{ *:[f32] }:$x) |
| 32142 | /* 64178*/ /*Scope*/ 11, /*->64190*/ |
| 32143 | /* 64179*/ OPC_CheckChild0Type, MVT::f64, |
| 32144 | /* 64181*/ OPC_CheckType, MVT::v2f64, |
| 32145 | /* 64183*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SPLAT_F64x2), 0, |
| 32146 | MVT::v2f64, 1/*#Ops*/, 0, |
| 32147 | // Src: (scalar_to_vector:{ *:[v2f64] } F64:{ *:[f64] }:$x) - Complexity = 3 |
| 32148 | // Dst: (SPLAT_F64x2:{ *:[v2f64] } ?:{ *:[f64] }:$x) |
| 32149 | /* 64190*/ 0, /*End of Scope*/ |
| 32150 | /* 64191*/ /*SwitchOpcode*/ 71, TARGET_VAL(ISD::VSELECT),// ->64265 |
| 32151 | /* 64194*/ OPC_RecordChild0, // #0 = $c |
| 32152 | /* 64195*/ OPC_RecordChild1, // #1 = $v1 |
| 32153 | /* 64196*/ OPC_RecordChild2, // #2 = $v2 |
| 32154 | /* 64197*/ OPC_SwitchType /*6 cases */, 9, MVT::v16i8,// ->64209 |
| 32155 | /* 64200*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 32156 | MVT::v16i8, 3/*#Ops*/, 1, 2, 0, |
| 32157 | // Src: (vselect:{ *:[v16i8] } V128:{ *:[v16i8] }:$c, V128:{ *:[v16i8] }:$v1, V128:{ *:[v16i8] }:$v2) - Complexity = 3 |
| 32158 | // Dst: (BITSELECT:{ *:[v16i8] } ?:{ *:[v16i8] }:$v1, ?:{ *:[v16i8] }:$v2, ?:{ *:[v16i8] }:$c) |
| 32159 | /* 64209*/ /*SwitchType*/ 9, MVT::v8i16,// ->64220 |
| 32160 | /* 64211*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 32161 | MVT::v8i16, 3/*#Ops*/, 1, 2, 0, |
| 32162 | // Src: (vselect:{ *:[v8i16] } V128:{ *:[v8i16] }:$c, V128:{ *:[v8i16] }:$v1, V128:{ *:[v8i16] }:$v2) - Complexity = 3 |
| 32163 | // Dst: (BITSELECT:{ *:[v8i16] } ?:{ *:[v8i16] }:$v1, ?:{ *:[v8i16] }:$v2, ?:{ *:[v8i16] }:$c) |
| 32164 | /* 64220*/ /*SwitchType*/ 9, MVT::v4i32,// ->64231 |
| 32165 | /* 64222*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 32166 | MVT::v4i32, 3/*#Ops*/, 1, 2, 0, |
| 32167 | // Src: (vselect:{ *:[v4i32] } V128:{ *:[v4i32] }:$c, V128:{ *:[v4i32] }:$v1, V128:{ *:[v4i32] }:$v2) - Complexity = 3 |
| 32168 | // Dst: (BITSELECT:{ *:[v4i32] } ?:{ *:[v4i32] }:$v1, ?:{ *:[v4i32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 32169 | /* 64231*/ /*SwitchType*/ 9, MVT::v2i64,// ->64242 |
| 32170 | /* 64233*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 32171 | MVT::v2i64, 3/*#Ops*/, 1, 2, 0, |
| 32172 | // Src: (vselect:{ *:[v2i64] } V128:{ *:[v2i64] }:$c, V128:{ *:[v2i64] }:$v1, V128:{ *:[v2i64] }:$v2) - Complexity = 3 |
| 32173 | // Dst: (BITSELECT:{ *:[v2i64] } ?:{ *:[v2i64] }:$v1, ?:{ *:[v2i64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 32174 | /* 64242*/ /*SwitchType*/ 9, MVT::v4f32,// ->64253 |
| 32175 | /* 64244*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 32176 | MVT::v4f32, 3/*#Ops*/, 1, 2, 0, |
| 32177 | // Src: (vselect:{ *:[v4f32] } V128:{ *:[v4i32] }:$c, V128:{ *:[v4f32] }:$v1, V128:{ *:[v4f32] }:$v2) - Complexity = 3 |
| 32178 | // Dst: (BITSELECT:{ *:[v4f32] } ?:{ *:[v4f32] }:$v1, ?:{ *:[v4f32] }:$v2, ?:{ *:[v4i32] }:$c) |
| 32179 | /* 64253*/ /*SwitchType*/ 9, MVT::v2f64,// ->64264 |
| 32180 | /* 64255*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::BITSELECT), 0, |
| 32181 | MVT::v2f64, 3/*#Ops*/, 1, 2, 0, |
| 32182 | // Src: (vselect:{ *:[v2f64] } V128:{ *:[v2i64] }:$c, V128:{ *:[v2f64] }:$v1, V128:{ *:[v2f64] }:$v2) - Complexity = 3 |
| 32183 | // Dst: (BITSELECT:{ *:[v2f64] } ?:{ *:[v2f64] }:$v1, ?:{ *:[v2f64] }:$v2, ?:{ *:[v2i64] }:$c) |
| 32184 | /* 64264*/ 0, // EndSwitchType |
| 32185 | /* 64265*/ /*SwitchOpcode*/ 47, TARGET_VAL(ISD::ABS),// ->64315 |
| 32186 | /* 64268*/ OPC_RecordChild0, // #0 = $v |
| 32187 | /* 64269*/ OPC_SwitchType /*4 cases */, 9, MVT::v16i8,// ->64281 |
| 32188 | /* 64272*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32189 | /* 64274*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ABS_I8x16), 0, |
| 32190 | MVT::v16i8, 1/*#Ops*/, 0, |
| 32191 | // Src: (abs:{ *:[v16i8] } V128:{ *:[v16i8] }:$v) - Complexity = 3 |
| 32192 | // Dst: (ABS_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$v) |
| 32193 | /* 64281*/ /*SwitchType*/ 9, MVT::v8i16,// ->64292 |
| 32194 | /* 64283*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32195 | /* 64285*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ABS_I16x8), 0, |
| 32196 | MVT::v8i16, 1/*#Ops*/, 0, |
| 32197 | // Src: (abs:{ *:[v8i16] } V128:{ *:[v8i16] }:$v) - Complexity = 3 |
| 32198 | // Dst: (ABS_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$v) |
| 32199 | /* 64292*/ /*SwitchType*/ 9, MVT::v4i32,// ->64303 |
| 32200 | /* 64294*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32201 | /* 64296*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ABS_I32x4), 0, |
| 32202 | MVT::v4i32, 1/*#Ops*/, 0, |
| 32203 | // Src: (abs:{ *:[v4i32] } V128:{ *:[v4i32] }:$v) - Complexity = 3 |
| 32204 | // Dst: (ABS_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$v) |
| 32205 | /* 64303*/ /*SwitchType*/ 9, MVT::v2i64,// ->64314 |
| 32206 | /* 64305*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32207 | /* 64307*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ABS_I64x2), 0, |
| 32208 | MVT::v2i64, 1/*#Ops*/, 0, |
| 32209 | // Src: (abs:{ *:[v2i64] } V128:{ *:[v2i64] }:$v) - Complexity = 3 |
| 32210 | // Dst: (ABS_I64x2:{ *:[v2i64] } V128:{ *:[v2i64] }:$v) |
| 32211 | /* 64314*/ 0, // EndSwitchType |
| 32212 | /* 64315*/ /*SwitchOpcode*/ 52, TARGET_VAL(WebAssemblyISD::VEC_SHL),// ->64370 |
| 32213 | /* 64318*/ OPC_RecordChild0, // #0 = $vec |
| 32214 | /* 64319*/ OPC_RecordChild1, // #1 = $x |
| 32215 | /* 64320*/ OPC_SwitchType /*4 cases */, 10, MVT::v16i8,// ->64333 |
| 32216 | /* 64323*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32217 | /* 64325*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHL_I8x16), 0, |
| 32218 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 32219 | // Src: (wasm_shl:{ *:[v16i8] } V128:{ *:[v16i8] }:$vec, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 32220 | // Dst: (SHL_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$vec, I32:{ *:[i32] }:$x) |
| 32221 | /* 64333*/ /*SwitchType*/ 10, MVT::v8i16,// ->64345 |
| 32222 | /* 64335*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32223 | /* 64337*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHL_I16x8), 0, |
| 32224 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 32225 | // Src: (wasm_shl:{ *:[v8i16] } V128:{ *:[v8i16] }:$vec, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 32226 | // Dst: (SHL_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$vec, I32:{ *:[i32] }:$x) |
| 32227 | /* 64345*/ /*SwitchType*/ 10, MVT::v4i32,// ->64357 |
| 32228 | /* 64347*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32229 | /* 64349*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHL_I32x4), 0, |
| 32230 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 32231 | // Src: (wasm_shl:{ *:[v4i32] } V128:{ *:[v4i32] }:$vec, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 32232 | // Dst: (SHL_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$vec, I32:{ *:[i32] }:$x) |
| 32233 | /* 64357*/ /*SwitchType*/ 10, MVT::v2i64,// ->64369 |
| 32234 | /* 64359*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32235 | /* 64361*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHL_I64x2), 0, |
| 32236 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 32237 | // Src: (wasm_shl:{ *:[v2i64] } V128:{ *:[v2i64] }:$vec, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 32238 | // Dst: (SHL_I64x2:{ *:[v2i64] } V128:{ *:[v2i64] }:$vec, I32:{ *:[i32] }:$x) |
| 32239 | /* 64369*/ 0, // EndSwitchType |
| 32240 | /* 64370*/ /*SwitchOpcode*/ 52, TARGET_VAL(WebAssemblyISD::VEC_SHR_S),// ->64425 |
| 32241 | /* 64373*/ OPC_RecordChild0, // #0 = $vec |
| 32242 | /* 64374*/ OPC_RecordChild1, // #1 = $x |
| 32243 | /* 64375*/ OPC_SwitchType /*4 cases */, 10, MVT::v16i8,// ->64388 |
| 32244 | /* 64378*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32245 | /* 64380*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHR_S_I8x16), 0, |
| 32246 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 32247 | // Src: (wasm_shr_s:{ *:[v16i8] } V128:{ *:[v16i8] }:$vec, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 32248 | // Dst: (SHR_S_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$vec, I32:{ *:[i32] }:$x) |
| 32249 | /* 64388*/ /*SwitchType*/ 10, MVT::v8i16,// ->64400 |
| 32250 | /* 64390*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32251 | /* 64392*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHR_S_I16x8), 0, |
| 32252 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 32253 | // Src: (wasm_shr_s:{ *:[v8i16] } V128:{ *:[v8i16] }:$vec, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 32254 | // Dst: (SHR_S_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$vec, I32:{ *:[i32] }:$x) |
| 32255 | /* 64400*/ /*SwitchType*/ 10, MVT::v4i32,// ->64412 |
| 32256 | /* 64402*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32257 | /* 64404*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHR_S_I32x4), 0, |
| 32258 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 32259 | // Src: (wasm_shr_s:{ *:[v4i32] } V128:{ *:[v4i32] }:$vec, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 32260 | // Dst: (SHR_S_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$vec, I32:{ *:[i32] }:$x) |
| 32261 | /* 64412*/ /*SwitchType*/ 10, MVT::v2i64,// ->64424 |
| 32262 | /* 64414*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32263 | /* 64416*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::SHR_S_I64x2), 0, |
| 32264 | MVT::v2i64, 2/*#Ops*/, 0, 1, |
| 32265 | // Src: (wasm_shr_s:{ *:[v2i64] } V128:{ *:[v2i64] }:$vec, I32:{ *:[i32] }:$x) - Complexity = 3 |
| 32266 | // Dst: (SHR_S_I64x2:{ *:[v2i64] } V128:{ *:[v2i64] }:$vec, I32:{ *:[i32] }:$x) |
| 32267 | /* 64424*/ 0, // EndSwitchType |
| 32268 | /* 64425*/ /*SwitchOpcode*/ 28, TARGET_VAL(ISD::SADDSAT),// ->64456 |
| 32269 | /* 64428*/ OPC_RecordChild0, // #0 = $lhs |
| 32270 | /* 64429*/ OPC_RecordChild1, // #1 = $rhs |
| 32271 | /* 64430*/ OPC_SwitchType /*2 cases */, 10, MVT::v16i8,// ->64443 |
| 32272 | /* 64433*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32273 | /* 64435*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_SAT_S_I8x16), 0, |
| 32274 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 32275 | // Src: (saddsat:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 3 |
| 32276 | // Dst: (ADD_SAT_S_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 32277 | /* 64443*/ /*SwitchType*/ 10, MVT::v8i16,// ->64455 |
| 32278 | /* 64445*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32279 | /* 64447*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_SAT_S_I16x8), 0, |
| 32280 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 32281 | // Src: (saddsat:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 32282 | // Dst: (ADD_SAT_S_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 32283 | /* 64455*/ 0, // EndSwitchType |
| 32284 | /* 64456*/ /*SwitchOpcode*/ 28, TARGET_VAL(ISD::UADDSAT),// ->64487 |
| 32285 | /* 64459*/ OPC_RecordChild0, // #0 = $lhs |
| 32286 | /* 64460*/ OPC_RecordChild1, // #1 = $rhs |
| 32287 | /* 64461*/ OPC_SwitchType /*2 cases */, 10, MVT::v16i8,// ->64474 |
| 32288 | /* 64464*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32289 | /* 64466*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_SAT_U_I8x16), 0, |
| 32290 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 32291 | // Src: (uaddsat:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 3 |
| 32292 | // Dst: (ADD_SAT_U_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 32293 | /* 64474*/ /*SwitchType*/ 10, MVT::v8i16,// ->64486 |
| 32294 | /* 64476*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32295 | /* 64478*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADD_SAT_U_I16x8), 0, |
| 32296 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 32297 | // Src: (uaddsat:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 32298 | // Dst: (ADD_SAT_U_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 32299 | /* 64486*/ 0, // EndSwitchType |
| 32300 | /* 64487*/ /*SwitchOpcode*/ 40, TARGET_VAL(ISD::SMIN),// ->64530 |
| 32301 | /* 64490*/ OPC_RecordChild0, // #0 = $lhs |
| 32302 | /* 64491*/ OPC_RecordChild1, // #1 = $rhs |
| 32303 | /* 64492*/ OPC_SwitchType /*3 cases */, 10, MVT::v16i8,// ->64505 |
| 32304 | /* 64495*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32305 | /* 64497*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MIN_S_I8x16), 0, |
| 32306 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 32307 | // Src: (smin:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 3 |
| 32308 | // Dst: (MIN_S_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 32309 | /* 64505*/ /*SwitchType*/ 10, MVT::v8i16,// ->64517 |
| 32310 | /* 64507*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32311 | /* 64509*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MIN_S_I16x8), 0, |
| 32312 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 32313 | // Src: (smin:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 32314 | // Dst: (MIN_S_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 32315 | /* 64517*/ /*SwitchType*/ 10, MVT::v4i32,// ->64529 |
| 32316 | /* 64519*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32317 | /* 64521*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MIN_S_I32x4), 0, |
| 32318 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 32319 | // Src: (smin:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 3 |
| 32320 | // Dst: (MIN_S_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 32321 | /* 64529*/ 0, // EndSwitchType |
| 32322 | /* 64530*/ /*SwitchOpcode*/ 40, TARGET_VAL(ISD::UMIN),// ->64573 |
| 32323 | /* 64533*/ OPC_RecordChild0, // #0 = $lhs |
| 32324 | /* 64534*/ OPC_RecordChild1, // #1 = $rhs |
| 32325 | /* 64535*/ OPC_SwitchType /*3 cases */, 10, MVT::v16i8,// ->64548 |
| 32326 | /* 64538*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32327 | /* 64540*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MIN_U_I8x16), 0, |
| 32328 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 32329 | // Src: (umin:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 3 |
| 32330 | // Dst: (MIN_U_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 32331 | /* 64548*/ /*SwitchType*/ 10, MVT::v8i16,// ->64560 |
| 32332 | /* 64550*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32333 | /* 64552*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MIN_U_I16x8), 0, |
| 32334 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 32335 | // Src: (umin:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 32336 | // Dst: (MIN_U_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 32337 | /* 64560*/ /*SwitchType*/ 10, MVT::v4i32,// ->64572 |
| 32338 | /* 64562*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32339 | /* 64564*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MIN_U_I32x4), 0, |
| 32340 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 32341 | // Src: (umin:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 3 |
| 32342 | // Dst: (MIN_U_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 32343 | /* 64572*/ 0, // EndSwitchType |
| 32344 | /* 64573*/ /*SwitchOpcode*/ 40, TARGET_VAL(ISD::SMAX),// ->64616 |
| 32345 | /* 64576*/ OPC_RecordChild0, // #0 = $lhs |
| 32346 | /* 64577*/ OPC_RecordChild1, // #1 = $rhs |
| 32347 | /* 64578*/ OPC_SwitchType /*3 cases */, 10, MVT::v16i8,// ->64591 |
| 32348 | /* 64581*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32349 | /* 64583*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MAX_S_I8x16), 0, |
| 32350 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 32351 | // Src: (smax:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 3 |
| 32352 | // Dst: (MAX_S_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 32353 | /* 64591*/ /*SwitchType*/ 10, MVT::v8i16,// ->64603 |
| 32354 | /* 64593*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32355 | /* 64595*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MAX_S_I16x8), 0, |
| 32356 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 32357 | // Src: (smax:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 32358 | // Dst: (MAX_S_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 32359 | /* 64603*/ /*SwitchType*/ 10, MVT::v4i32,// ->64615 |
| 32360 | /* 64605*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32361 | /* 64607*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MAX_S_I32x4), 0, |
| 32362 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 32363 | // Src: (smax:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 3 |
| 32364 | // Dst: (MAX_S_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 32365 | /* 64615*/ 0, // EndSwitchType |
| 32366 | /* 64616*/ /*SwitchOpcode*/ 40, TARGET_VAL(ISD::UMAX),// ->64659 |
| 32367 | /* 64619*/ OPC_RecordChild0, // #0 = $lhs |
| 32368 | /* 64620*/ OPC_RecordChild1, // #1 = $rhs |
| 32369 | /* 64621*/ OPC_SwitchType /*3 cases */, 10, MVT::v16i8,// ->64634 |
| 32370 | /* 64624*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32371 | /* 64626*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MAX_U_I8x16), 0, |
| 32372 | MVT::v16i8, 2/*#Ops*/, 0, 1, |
| 32373 | // Src: (umax:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) - Complexity = 3 |
| 32374 | // Dst: (MAX_U_I8x16:{ *:[v16i8] } V128:{ *:[v16i8] }:$lhs, V128:{ *:[v16i8] }:$rhs) |
| 32375 | /* 64634*/ /*SwitchType*/ 10, MVT::v8i16,// ->64646 |
| 32376 | /* 64636*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32377 | /* 64638*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MAX_U_I16x8), 0, |
| 32378 | MVT::v8i16, 2/*#Ops*/, 0, 1, |
| 32379 | // Src: (umax:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) - Complexity = 3 |
| 32380 | // Dst: (MAX_U_I16x8:{ *:[v8i16] } V128:{ *:[v8i16] }:$lhs, V128:{ *:[v8i16] }:$rhs) |
| 32381 | /* 64646*/ /*SwitchType*/ 10, MVT::v4i32,// ->64658 |
| 32382 | /* 64648*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32383 | /* 64650*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MAX_U_I32x4), 0, |
| 32384 | MVT::v4i32, 2/*#Ops*/, 0, 1, |
| 32385 | // Src: (umax:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) - Complexity = 3 |
| 32386 | // Dst: (MAX_U_I32x4:{ *:[v4i32] } V128:{ *:[v4i32] }:$lhs, V128:{ *:[v4i32] }:$rhs) |
| 32387 | /* 64658*/ 0, // EndSwitchType |
| 32388 | /* 64659*/ /*SwitchOpcode*/ 29, TARGET_VAL(WebAssemblyISD::WIDEN_LOW_S),// ->64691 |
| 32389 | /* 64662*/ OPC_RecordChild0, // #0 = $vec |
| 32390 | /* 64663*/ OPC_SwitchType /*2 cases */, 11, MVT::v8i16,// ->64677 |
| 32391 | /* 64666*/ OPC_CheckChild0Type, MVT::v16i8, |
| 32392 | /* 64668*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32393 | /* 64670*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::widen_low_s_I16x8), 0, |
| 32394 | MVT::v8i16, 1/*#Ops*/, 0, |
| 32395 | // Src: (widen_low_s:{ *:[v8i16] } V128:{ *:[v16i8] }:$vec) - Complexity = 3 |
| 32396 | // Dst: (widen_low_s_I16x8:{ *:[v8i16] } V128:{ *:[v16i8] }:$vec) |
| 32397 | /* 64677*/ /*SwitchType*/ 11, MVT::v4i32,// ->64690 |
| 32398 | /* 64679*/ OPC_CheckChild0Type, MVT::v8i16, |
| 32399 | /* 64681*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32400 | /* 64683*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::widen_low_s_I32x4), 0, |
| 32401 | MVT::v4i32, 1/*#Ops*/, 0, |
| 32402 | // Src: (widen_low_s:{ *:[v4i32] } V128:{ *:[v8i16] }:$vec) - Complexity = 3 |
| 32403 | // Dst: (widen_low_s_I32x4:{ *:[v4i32] } V128:{ *:[v8i16] }:$vec) |
| 32404 | /* 64690*/ 0, // EndSwitchType |
| 32405 | /* 64691*/ /*SwitchOpcode*/ 29, TARGET_VAL(WebAssemblyISD::WIDEN_HIGH_S),// ->64723 |
| 32406 | /* 64694*/ OPC_RecordChild0, // #0 = $vec |
| 32407 | /* 64695*/ OPC_SwitchType /*2 cases */, 11, MVT::v8i16,// ->64709 |
| 32408 | /* 64698*/ OPC_CheckChild0Type, MVT::v16i8, |
| 32409 | /* 64700*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32410 | /* 64702*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::widen_high_s_I16x8), 0, |
| 32411 | MVT::v8i16, 1/*#Ops*/, 0, |
| 32412 | // Src: (widen_high_s:{ *:[v8i16] } V128:{ *:[v16i8] }:$vec) - Complexity = 3 |
| 32413 | // Dst: (widen_high_s_I16x8:{ *:[v8i16] } V128:{ *:[v16i8] }:$vec) |
| 32414 | /* 64709*/ /*SwitchType*/ 11, MVT::v4i32,// ->64722 |
| 32415 | /* 64711*/ OPC_CheckChild0Type, MVT::v8i16, |
| 32416 | /* 64713*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32417 | /* 64715*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::widen_high_s_I32x4), 0, |
| 32418 | MVT::v4i32, 1/*#Ops*/, 0, |
| 32419 | // Src: (widen_high_s:{ *:[v4i32] } V128:{ *:[v8i16] }:$vec) - Complexity = 3 |
| 32420 | // Dst: (widen_high_s_I32x4:{ *:[v4i32] } V128:{ *:[v8i16] }:$vec) |
| 32421 | /* 64722*/ 0, // EndSwitchType |
| 32422 | /* 64723*/ /*SwitchOpcode*/ 29, TARGET_VAL(WebAssemblyISD::WIDEN_LOW_U),// ->64755 |
| 32423 | /* 64726*/ OPC_RecordChild0, // #0 = $vec |
| 32424 | /* 64727*/ OPC_SwitchType /*2 cases */, 11, MVT::v8i16,// ->64741 |
| 32425 | /* 64730*/ OPC_CheckChild0Type, MVT::v16i8, |
| 32426 | /* 64732*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32427 | /* 64734*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::widen_low_u_I16x8), 0, |
| 32428 | MVT::v8i16, 1/*#Ops*/, 0, |
| 32429 | // Src: (widen_low_u:{ *:[v8i16] } V128:{ *:[v16i8] }:$vec) - Complexity = 3 |
| 32430 | // Dst: (widen_low_u_I16x8:{ *:[v8i16] } V128:{ *:[v16i8] }:$vec) |
| 32431 | /* 64741*/ /*SwitchType*/ 11, MVT::v4i32,// ->64754 |
| 32432 | /* 64743*/ OPC_CheckChild0Type, MVT::v8i16, |
| 32433 | /* 64745*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32434 | /* 64747*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::widen_low_u_I32x4), 0, |
| 32435 | MVT::v4i32, 1/*#Ops*/, 0, |
| 32436 | // Src: (widen_low_u:{ *:[v4i32] } V128:{ *:[v8i16] }:$vec) - Complexity = 3 |
| 32437 | // Dst: (widen_low_u_I32x4:{ *:[v4i32] } V128:{ *:[v8i16] }:$vec) |
| 32438 | /* 64754*/ 0, // EndSwitchType |
| 32439 | /* 64755*/ /*SwitchOpcode*/ 29, TARGET_VAL(WebAssemblyISD::WIDEN_HIGH_U),// ->64787 |
| 32440 | /* 64758*/ OPC_RecordChild0, // #0 = $vec |
| 32441 | /* 64759*/ OPC_SwitchType /*2 cases */, 11, MVT::v8i16,// ->64773 |
| 32442 | /* 64762*/ OPC_CheckChild0Type, MVT::v16i8, |
| 32443 | /* 64764*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32444 | /* 64766*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::widen_high_u_I16x8), 0, |
| 32445 | MVT::v8i16, 1/*#Ops*/, 0, |
| 32446 | // Src: (widen_high_u:{ *:[v8i16] } V128:{ *:[v16i8] }:$vec) - Complexity = 3 |
| 32447 | // Dst: (widen_high_u_I16x8:{ *:[v8i16] } V128:{ *:[v16i8] }:$vec) |
| 32448 | /* 64773*/ /*SwitchType*/ 11, MVT::v4i32,// ->64786 |
| 32449 | /* 64775*/ OPC_CheckChild0Type, MVT::v8i16, |
| 32450 | /* 64777*/ OPC_CheckPatternPredicate, 8, // (Subtarget->hasSIMD128()) |
| 32451 | /* 64779*/ OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::widen_high_u_I32x4), 0, |
| 32452 | MVT::v4i32, 1/*#Ops*/, 0, |
| 32453 | // Src: (widen_high_u:{ *:[v4i32] } V128:{ *:[v8i16] }:$vec) - Complexity = 3 |
| 32454 | // Dst: (widen_high_u_I32x4:{ *:[v4i32] } V128:{ *:[v8i16] }:$vec) |
| 32455 | /* 64786*/ 0, // EndSwitchType |
| 32456 | /* 64787*/ 0, // EndSwitchOpcode |
| 32457 | 0 |
| 32458 | }; // Total Array size is 64789 bytes |
| 32459 | |
| 32460 | // Opcode Histogram: |
| 32461 | // #OPC_Scope = 833 |
| 32462 | // #OPC_RecordNode = 269 |
| 32463 | // #OPC_RecordChild = 1543 |
| 32464 | // #OPC_RecordMemRef = 183 |
| 32465 | // #OPC_CaptureGlueInput = 1 |
| 32466 | // #OPC_MoveChild = 1272 |
| 32467 | // #OPC_MoveParent = 2025 |
| 32468 | // #OPC_CheckSame = 12 |
| 32469 | // #OPC_CheckChildSame = 69 |
| 32470 | // #OPC_CheckPatternPredicate = 1816 |
| 32471 | // #OPC_CheckPredicate = 1725 |
| 32472 | // #OPC_CheckOpcode = 1121 |
| 32473 | // #OPC_SwitchOpcode = 52 |
| 32474 | // #OPC_CheckType = 606 |
| 32475 | // #OPC_SwitchType = 402 |
| 32476 | // #OPC_CheckChildType = 470 |
| 32477 | // #OPC_CheckInteger = 22 |
| 32478 | // #OPC_CheckChildInteger = 113 |
| 32479 | // #OPC_CheckCondCode = 0 |
| 32480 | // #OPC_CheckChild2CondCode = 138 |
| 32481 | // #OPC_CheckValueType = 5 |
| 32482 | // #OPC_CheckComplexPat = 0 |
| 32483 | // #OPC_CheckAndImm = 156 |
| 32484 | // #OPC_CheckOrImm = 0 |
| 32485 | // #OPC_CheckImmAllOnesV = 60 |
| 32486 | // #OPC_CheckImmAllZerosV = 1 |
| 32487 | // #OPC_CheckFoldableChainNode = 152 |
| 32488 | // #OPC_EmitInteger = 2584 |
| 32489 | // #OPC_EmitStringInteger = 0 |
| 32490 | // #OPC_EmitRegister = 0 |
| 32491 | // #OPC_EmitConvertToTarget = 1105 |
| 32492 | // #OPC_EmitMergeInputChains = 1599 |
| 32493 | // #OPC_EmitCopyToReg = 0 |
| 32494 | // #OPC_EmitNode = 730 |
| 32495 | // #OPC_EmitNodeXForm = 0 |
| 32496 | // #OPC_CompleteMatch = 30 |
| 32497 | // #OPC_MorphNodeTo = 2240 |
| 32498 | |
| 32499 | #undef TARGET_VAL |
| 32500 | SelectCodeCommon(N, MatcherTable,sizeof(MatcherTable)); |
| 32501 | } |
| 32502 | #endif // GET_DAGISEL_BODY |
| 32503 | |
| 32504 | #ifdef GET_DAGISEL_DECL |
| 32505 | bool CheckPatternPredicate(unsigned PredNo) const override; |
| 32506 | #endif |
| 32507 | #if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE |
| 32508 | bool DAGISEL_CLASS_COLONCOLON CheckPatternPredicate(unsigned PredNo) const |
| 32509 | #if DAGISEL_INLINE |
| 32510 | override |
| 32511 | #endif |
| 32512 | { |
| 32513 | switch (PredNo) { |
| 32514 | default: llvm_unreachable("Invalid predicate in table?" ); |
| 32515 | case 0: return (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()); |
| 32516 | case 1: return (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()); |
| 32517 | case 2: return (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()); |
| 32518 | case 3: return (Subtarget->hasAddr64()) && (Subtarget->hasAtomics()) && (!TM.isPositionIndependent()); |
| 32519 | case 4: return (!Subtarget->hasAddr64()); |
| 32520 | case 5: return (Subtarget->hasAddr64()); |
| 32521 | case 6: return (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent()); |
| 32522 | case 7: return (Subtarget->hasAddr64()) && (!TM.isPositionIndependent()); |
| 32523 | case 8: return (Subtarget->hasSIMD128()); |
| 32524 | case 9: return (Subtarget->hasExceptionHandling()); |
| 32525 | case 10: return (Subtarget->hasReferenceTypes()); |
| 32526 | case 11: return (Subtarget->hasSignExt()); |
| 32527 | case 12: return (Subtarget->hasBulkMemory()); |
| 32528 | case 13: return (!Subtarget->hasAddr64()) && (TM.isPositionIndependent()); |
| 32529 | case 14: return (Subtarget->hasAddr64()) && (TM.isPositionIndependent()); |
| 32530 | case 15: return (Subtarget->hasNontrappingFPToInt()); |
| 32531 | case 16: return (!Subtarget->hasNontrappingFPToInt()); |
| 32532 | case 17: return (Subtarget->hasUnimplementedSIMD128()); |
| 32533 | } |
| 32534 | } |
| 32535 | #endif // GET_DAGISEL_BODY |
| 32536 | |
| 32537 | #ifdef GET_DAGISEL_DECL |
| 32538 | bool CheckNodePredicate(SDNode *Node, unsigned PredNo) const override; |
| 32539 | #endif |
| 32540 | #if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE |
| 32541 | bool DAGISEL_CLASS_COLONCOLON CheckNodePredicate(SDNode *Node, unsigned PredNo) const |
| 32542 | #if DAGISEL_INLINE |
| 32543 | override |
| 32544 | #endif |
| 32545 | { |
| 32546 | switch (PredNo) { |
| 32547 | default: llvm_unreachable("Invalid predicate in table?" ); |
| 32548 | case 0: { |
| 32549 | // Predicate_regPlusImm |
| 32550 | SDNode *N = Node; |
| 32551 | (void)N; |
| 32552 | return N->getFlags().hasNoUnsignedWrap(); |
| 32553 | } |
| 32554 | case 1: { |
| 32555 | // Predicate_atomic_load_add_8 |
| 32556 | // Predicate_atomic_load_sub_8 |
| 32557 | // Predicate_atomic_load_and_8 |
| 32558 | // Predicate_atomic_load_or_8 |
| 32559 | // Predicate_atomic_load_xor_8 |
| 32560 | // Predicate_atomic_swap_8 |
| 32561 | // Predicate_atomic_load_8 |
| 32562 | // Predicate_atomic_cmp_swap_8 |
| 32563 | // Predicate_atomic_store_8 |
| 32564 | // Predicate_sextloadi8 |
| 32565 | // Predicate_zextloadi8 |
| 32566 | // Predicate_extloadi8 |
| 32567 | // Predicate_truncstorei8 |
| 32568 | SDNode *N = Node; |
| 32569 | (void)N; |
| 32570 | if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i8) return false; |
| 32571 | return true; |
| 32572 | |
| 32573 | } |
| 32574 | case 2: { |
| 32575 | // Predicate_atomic_load_add_16 |
| 32576 | // Predicate_atomic_load_sub_16 |
| 32577 | // Predicate_atomic_load_and_16 |
| 32578 | // Predicate_atomic_load_or_16 |
| 32579 | // Predicate_atomic_load_xor_16 |
| 32580 | // Predicate_atomic_swap_16 |
| 32581 | // Predicate_atomic_load_16 |
| 32582 | // Predicate_atomic_cmp_swap_16 |
| 32583 | // Predicate_atomic_store_16 |
| 32584 | // Predicate_sextloadi16 |
| 32585 | // Predicate_zextloadi16 |
| 32586 | // Predicate_extloadi16 |
| 32587 | // Predicate_truncstorei16 |
| 32588 | SDNode *N = Node; |
| 32589 | (void)N; |
| 32590 | if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i16) return false; |
| 32591 | return true; |
| 32592 | |
| 32593 | } |
| 32594 | case 3: { |
| 32595 | // Predicate_or_is_add |
| 32596 | SDNode *N = Node; |
| 32597 | (void)N; |
| 32598 | |
| 32599 | if (ConstantSDNode *CN = dyn_cast<ConstantSDNode>(N->getOperand(1))) |
| 32600 | return CurDAG->MaskedValueIsZero(N->getOperand(0), CN->getAPIntValue()); |
| 32601 | |
| 32602 | KnownBits Known0 = CurDAG->computeKnownBits(N->getOperand(0), 0); |
| 32603 | KnownBits Known1 = CurDAG->computeKnownBits(N->getOperand(1), 0); |
| 32604 | return (~Known0.Zero & ~Known1.Zero) == 0; |
| 32605 | |
| 32606 | } |
| 32607 | case 4: { |
| 32608 | // Predicate_LaneIdx16 |
| 32609 | int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| 32610 | return 0 <= Imm && Imm < 16; |
| 32611 | } |
| 32612 | case 5: { |
| 32613 | // Predicate_LaneIdx8 |
| 32614 | int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| 32615 | return 0 <= Imm && Imm < 8; |
| 32616 | } |
| 32617 | case 6: { |
| 32618 | // Predicate_atomic_cmp_swap_32 |
| 32619 | // Predicate_atomic_load_add_32 |
| 32620 | // Predicate_atomic_load_sub_32 |
| 32621 | // Predicate_atomic_load_and_32 |
| 32622 | // Predicate_atomic_load_or_32 |
| 32623 | // Predicate_atomic_load_xor_32 |
| 32624 | // Predicate_atomic_swap_32 |
| 32625 | // Predicate_atomic_store_32 |
| 32626 | // Predicate_sextloadi32 |
| 32627 | // Predicate_zextloadi32 |
| 32628 | // Predicate_extloadi32 |
| 32629 | // Predicate_truncstorei32 |
| 32630 | // Predicate_atomic_load_32 |
| 32631 | SDNode *N = Node; |
| 32632 | (void)N; |
| 32633 | if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i32) return false; |
| 32634 | return true; |
| 32635 | |
| 32636 | } |
| 32637 | case 7: { |
| 32638 | // Predicate_LaneIdx4 |
| 32639 | int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| 32640 | return 0 <= Imm && Imm < 4; |
| 32641 | } |
| 32642 | case 8: { |
| 32643 | // Predicate_LaneIdx2 |
| 32644 | int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| 32645 | return 0 <= Imm && Imm < 2; |
| 32646 | } |
| 32647 | case 9: { |
| 32648 | // Predicate_atomic_store_64 |
| 32649 | // Predicate_atomic_load_64 |
| 32650 | // Predicate_atomic_load_add_64 |
| 32651 | // Predicate_atomic_load_sub_64 |
| 32652 | // Predicate_atomic_load_and_64 |
| 32653 | // Predicate_atomic_load_or_64 |
| 32654 | // Predicate_atomic_load_xor_64 |
| 32655 | // Predicate_atomic_swap_64 |
| 32656 | // Predicate_atomic_cmp_swap_64 |
| 32657 | SDNode *N = Node; |
| 32658 | (void)N; |
| 32659 | if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i64) return false; |
| 32660 | return true; |
| 32661 | |
| 32662 | } |
| 32663 | case 10: { |
| 32664 | // Predicate_unindexedload |
| 32665 | SDNode *N = Node; |
| 32666 | (void)N; |
| 32667 | if (cast<LoadSDNode>(N)->getAddressingMode() != ISD::UNINDEXED) return false; |
| 32668 | return true; |
| 32669 | |
| 32670 | } |
| 32671 | case 11: { |
| 32672 | // Predicate_load |
| 32673 | SDNode *N = Node; |
| 32674 | (void)N; |
| 32675 | if (cast<LoadSDNode>(N)->getExtensionType() != ISD::NON_EXTLOAD) return false; |
| 32676 | return true; |
| 32677 | |
| 32678 | } |
| 32679 | case 12: { |
| 32680 | // Predicate_sextload |
| 32681 | SDNode *N = Node; |
| 32682 | (void)N; |
| 32683 | if (cast<LoadSDNode>(N)->getExtensionType() != ISD::SEXTLOAD) return false; |
| 32684 | return true; |
| 32685 | |
| 32686 | } |
| 32687 | case 13: { |
| 32688 | // Predicate_zextload |
| 32689 | SDNode *N = Node; |
| 32690 | (void)N; |
| 32691 | if (cast<LoadSDNode>(N)->getExtensionType() != ISD::ZEXTLOAD) return false; |
| 32692 | return true; |
| 32693 | |
| 32694 | } |
| 32695 | case 14: { |
| 32696 | // Predicate_extload |
| 32697 | SDNode *N = Node; |
| 32698 | (void)N; |
| 32699 | if (cast<LoadSDNode>(N)->getExtensionType() != ISD::EXTLOAD) return false; |
| 32700 | return true; |
| 32701 | |
| 32702 | } |
| 32703 | case 15: { |
| 32704 | // Predicate_sextloadvi8 |
| 32705 | // Predicate_zextloadvi8 |
| 32706 | // Predicate_extloadvi8 |
| 32707 | SDNode *N = Node; |
| 32708 | (void)N; |
| 32709 | if (cast<LoadSDNode>(N)->getMemoryVT().getScalarType() != MVT::i8) return false; |
| 32710 | return true; |
| 32711 | |
| 32712 | } |
| 32713 | case 16: { |
| 32714 | // Predicate_sextloadvi16 |
| 32715 | // Predicate_zextloadvi16 |
| 32716 | // Predicate_extloadvi16 |
| 32717 | SDNode *N = Node; |
| 32718 | (void)N; |
| 32719 | if (cast<LoadSDNode>(N)->getMemoryVT().getScalarType() != MVT::i16) return false; |
| 32720 | return true; |
| 32721 | |
| 32722 | } |
| 32723 | case 17: { |
| 32724 | // Predicate_sextloadvi32 |
| 32725 | // Predicate_zextloadvi32 |
| 32726 | // Predicate_extloadvi32 |
| 32727 | SDNode *N = Node; |
| 32728 | (void)N; |
| 32729 | if (cast<LoadSDNode>(N)->getMemoryVT().getScalarType() != MVT::i32) return false; |
| 32730 | return true; |
| 32731 | |
| 32732 | } |
| 32733 | case 18: { |
| 32734 | // Predicate_unindexedstore |
| 32735 | SDNode *N = Node; |
| 32736 | (void)N; |
| 32737 | if (cast<StoreSDNode>(N)->getAddressingMode() != ISD::UNINDEXED) return false; |
| 32738 | return true; |
| 32739 | |
| 32740 | } |
| 32741 | case 19: { |
| 32742 | // Predicate_store |
| 32743 | SDNode *N = Node; |
| 32744 | (void)N; |
| 32745 | if (cast<StoreSDNode>(N)->isTruncatingStore()) return false; |
| 32746 | return true; |
| 32747 | |
| 32748 | } |
| 32749 | case 20: { |
| 32750 | // Predicate_truncstore |
| 32751 | SDNode *N = Node; |
| 32752 | (void)N; |
| 32753 | if (!cast<StoreSDNode>(N)->isTruncatingStore()) return false; |
| 32754 | return true; |
| 32755 | |
| 32756 | } |
| 32757 | case 21: { |
| 32758 | // Predicate_truncstorevi8 |
| 32759 | SDNode *N = Node; |
| 32760 | (void)N; |
| 32761 | if (cast<StoreSDNode>(N)->getMemoryVT().getScalarType() != MVT::i8) return false; |
| 32762 | return true; |
| 32763 | |
| 32764 | } |
| 32765 | case 22: { |
| 32766 | // Predicate_truncstorevi16 |
| 32767 | SDNode *N = Node; |
| 32768 | (void)N; |
| 32769 | if (cast<StoreSDNode>(N)->getMemoryVT().getScalarType() != MVT::i16) return false; |
| 32770 | return true; |
| 32771 | |
| 32772 | } |
| 32773 | case 23: { |
| 32774 | // Predicate_add_nuw |
| 32775 | SDNode *N = Node; |
| 32776 | (void)N; |
| 32777 | return N->getFlags().hasNoUnsignedWrap(); |
| 32778 | } |
| 32779 | case 24: { |
| 32780 | // Predicate_ImmI8 |
| 32781 | int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| 32782 | return -(1 << (8 - 1)) <= Imm && Imm < (1 << (8 - 1)); |
| 32783 | } |
| 32784 | case 25: { |
| 32785 | // Predicate_ImmI16 |
| 32786 | int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| 32787 | return -(1 << (16 - 1)) <= Imm && Imm < (1 << (16 - 1)); |
| 32788 | } |
| 32789 | case 26: { |
| 32790 | // Predicate_LaneIdx32 |
| 32791 | int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| 32792 | return 0 <= Imm && Imm < 32; |
| 32793 | } |
| 32794 | } |
| 32795 | } |
| 32796 | #endif // GET_DAGISEL_BODY |
| 32797 | |
| 32798 | |
| 32799 | #ifdef DAGISEL_INLINE |
| 32800 | #undef DAGISEL_INLINE |
| 32801 | #endif |
| 32802 | #ifdef DAGISEL_CLASS_COLONCOLON |
| 32803 | #undef DAGISEL_CLASS_COLONCOLON |
| 32804 | #endif |
| 32805 | #ifdef GET_DAGISEL_DECL |
| 32806 | #undef GET_DAGISEL_DECL |
| 32807 | #endif |
| 32808 | #ifdef GET_DAGISEL_BODY |
| 32809 | #undef GET_DAGISEL_BODY |
| 32810 | #endif |
| 32811 | |